Увійти Реєстрація
Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Документація Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти Інструменти Події
Інше
Про нас Реклама
Документація Laravel українською: 103 сторінки і щоденна синхронізація
Новини 07 серпня 2026

Документація Laravel українською: 103 сторінки і щоденна синхронізація

Документація Laravel тепер доступна українською - усі 103 сторінки версії 13.x, від маршрутизації та Eloquent до Passport і Horizon. Читати можна просто на сайті, з пошуком по 4295 секціях і звичною бічною панеллю з 11 розділів.

Перекласти документацію - половина справи. Друга половина починається наступного дня, коли апстрім вносить чергову правку, і переклад тихо застаріває. Саме на цьому зазвичай і закінчуються спроби локалізації: перший захід робиться на ентузіазмі, а на другий рік хтось відкриває сторінку про черги й бачить API, якого вже два релізи як немає.

Тому синхронізація тут автоматична, і влаштована так, щоб щодня наздоганяти правку в кілька рядків, а не перекладати сторінку заново.

Кожна сторінка пам'ятає свій коміт

Перший рядок кожного перекладеного файлу - хеш коміту laravel/docs, з якого його перекладено:

  ---
  git: 8042e4ce5c44b0ad51476cb1fb915af086047edb
  ---

Це і є джерело правди про відставання. Немає окремої бази, яку треба тримати в актуальному стані, немає таблиці відповідностей, яку легко забути оновити: стан перекладу виводиться з самих файлів. Якщо хтось перекладе сторінку вручну й забуде оновити хеш - наступний прогін просто перекладе ті самі зміни ще раз, і це найгірше, що станеться.

Перекладаються тільки змінені секції

Сторінки документації сягають чотирьох тисяч рядків, а типовий коміт апстріму змінює двадцять. Віддавати strings.md цілком, щоб перейменувати один метод, - це переписати заново весь файл заради двох рядків правки, а разом із ним і всі шанси десь дорогою щось зіпсувати.

Тому файл ріжеться на секції за якорями <a name="..."></a>, і в модель іде лише та секція, якої торкнувся diff, разом із самим diff. Решта копіюється байт у байт - модель їх навіть не бачить, а отже не може зіпсувати.

Структуру перевіряє валідатор, а не людина

Переклад документації має збігатися з оригіналом структурно: сайт рендерить обидва з того самого Markdown, бічна панель будується з якорів, а глибокі посилання ведуть саме на них. Модель, яка загубила якір або злила два блоки коду, дає сторінку, яка в diff виглядає нормально, а на сайті зламана.

Тому перед записом кожна сторінка звіряється з англійським оригіналом:

  • кількість рядків - рівно стільки ж плюс три рядки заголовка;
  • якорі - той самий набір у тому самому порядку;
  • блоки коду - та сама кількість огорож;
  • внутрішні посилання - жодного, що вказує на неіснуючий якір.

Сторінка, яка не пройшла перевірку, не потрапляє в pull request. Нещодавно це спрацювало на installation.md: модель повернула секцію на два рядки коротшою, з'ївши порожній рядок біля блоку коду, - і сторінку було відхилено автоматично, без участі людини.

Що робить автоматика, а що лишає людям

Свідомо не автоматизовано дві речі.

Нові сторінки. Увесь механізм побудований на diff між двома комітами: беремо те, що змінилося від часу нашого перекладу. Для сторінки, якої в перекладі ще немає, порівнювати немає з чим - її треба перекладати цілком. Це вже не двадцять рядків правки, а сотні: сторінка про Laravel Head, приміром, має 762 рядки. Тому замість тихого нічного прогону заводиться issue. Саме так цього тижня з'явилася сторінка про Laravel Head: текст так само переклала модель, але окремим заходом і під наглядом людини.

Великі зміни. Якщо апстрім переписав розділ цілком, прогін не береться за нього, а звітує - переписаний з нуля розділ вартий уваги людини.

Переклад машинний, і ми цього не приховуємо

Головне, що варто сказати прямо: весь текст переклала модель. Базовий переклад усіх 103 сторінок робив Opus - найсильніша модель Anthropic, і саме тому текст вийшов пристойним. Щоденні зміни за diff наздоганяє Sonnet: там ідеться про десятки рядків, вписаних у вже готовий переклад із заданою термінологією і стилем. З цим він справляється впевнено.

Далі текст читають люди. Кожен прогін приходить окремим pull request, і зміни переглядають перед злиттям - саме тому в описі кожного PR стоїть нагадування, що структуру перевірено автоматично, а текст потребує вичитки.

Автоматика бере на себе рівно те, що можна перевірити машинно. Валідатор ловить структурні поломки - загублений якір, зниклий блок коду, роз'їхану кількість рядків. Кострубату фразу, невдалий термін чи зміщений акцент він не ловить: це лишається людині.

Вичитка триває, і це робота надовго. Тому якщо ви відкрили сторінку й перечепилися за формулювання - не проходьте повз:

  • репозиторій перекладу відкритий, PR вітаються;
  • у ньому є глосарій з усталеною термінологією - єдиний словник важливіший за красу окремої фрази;
  • правити варто український файл, а не англійський оригінал: апстрім підтягується автоматично.

Найкорисніші правки - не орфографічні, а термінологічні: якщо у вас є аргумент, чому middleware в конкретному контексті слід перекладати інакше, ніж каже глосарій, це рядок у словнику, а не лише в одному файлі.

З чого почати

Якщо ви тільки заходите в Laravel - встановлення і структура каталогів. Якщо вже пишете - найкорисніші українською зазвичай ті розділи, які читають найуважніше: Eloquent, черги і валідація.

Пошук працює по секціях, а не по сторінках, тож whereHas чи retryUntil приведуть одразу до потрібного абзацу, а не до чотиритисячного файлу, у якому це слово десь є.

Ми не вважаємо, що український переклад має замінити англійський оригінал. Хто вільно читає англійською, той і далі читатиме laravel.com/docs - і правильно робитиме. Але між «прочитати розділ рідною за десять хвилин» і «продиратися через нього годину зі словником» різниця не в зручності, а в тому, чи дочитає людина взагалі.

Саме заради цього все й затівалося. Документація жива, поки за нею встигають: тепер вона встигає сама, щодня, без чийогось вечора, витраченого на звірку з апстрімом. Лишається те, що під силу тільки людині, - зробити так, щоб цей текст читався українською, а не перекладеною англійською. Тут ми розраховуємо на вас.

62

Читати в документації

Коментарі

Увійдіть, щоб залишити коментар

Будьте першим, хто залишить коментар!

Читайте також

Filament v5.10.0
Новини 12 жовтня 2026

Filament v5.10.0: сітка в rich editor, скелетони таблиць і десятки виправлень

Вийшов Filament v5.10.0: елементи керування сіткою в rich editor, допоміжний контент для віджетів-графіків, скелетони завантаження таблиць, submitOnCompletion() для OneTimeCodeInput та багато виправлень авторизації, доступності й стану.

22
Laravel AI SDK на практиці
Новини 09 жовтня 2026

Laravel AI SDK на практиці: агент, що стоїть за There There

Фрік Ван дер Гертен розповідає, як у Spatie побудували AI-шар хелпдеска There There на Laravel AI SDK: клас агента, інструменти з типізованою JSON-схемою та делегування роботи звичайним domain-діям.

18

Вакансії за темою

Full Stack Developer (PHP / React) Middle / Middle+

Full Stack розробник розвиватиме та підтримуватиме власний аналітичний продукт для перевірки контрагентів і оцінки ризиків, працюючи зі складною бізнес-логікою та великими обсягами даних. Основний стек: PHP 8.x, Laravel або Symfony, MySQL, React; також потрібні проєктування API, оптимізація SQL-запитів, Docker, CI/CD. Вимоги: комерційний досвід від 3 років, досвід підтримки legacy-коду, англійська B1+ для читання документації.

Intetics Нова
3 дні тому

Senior Full-Stack PHP Developer (Laravel + React/Vue)

Senior Full-Stack PHP розробник створює й підтримує масштабовані веб-застосунки: бекенд на Laravel та фронтенд на React або Vue. Відповідає за архітектурні рішення (дизайн сервісів, моделювання даних, кешування, черги), проєктує REST API та інтеграції, рефакторить legacy-код і оптимізує запити. Вимоги: 5+ років досвіду з сучасним PHP 8.x, 3+ роки з Laravel, 3+ роки з React або Vue, сильний TypeScript, досвід з Redis і чергами, автотести та CI/CD.

AirAdvisor
4 дні тому

PHP Laravel Full Stack Developer with jQuery and JavaScript

Full stack розробник на PHP з фокусом на Laravel: backend-сервіси, веб-застосунки та інтеграція фронтенду на Bootstrap або Tailwind CSS, jQuery і JavaScript. Потрібна робота з MySQL у високонавантажених середовищах, кешування та черги (Redis, Memcached, RabbitMQ), підтримка legacy PHP без фреймворків і міграція на сучасні фреймворки. Вимоги: значний досвід PHP, побудова та масштабування API для high-traffic застосунків, знання HTML, CSS, JavaScript. Віддалена робота, оформлення через B2B або ФОП

Пакети за темою

Kalimera

welldigit/kalimera

Interactive installer that scaffolds Laravel applications the Well Digit way.

v1.0.0 15

Bagisto

bagisto/bagisto

Bagisto — це платформа для електронної комерції, побудована на Laravel. Вона надає готове рішення для створення та управління інтернет-магазинами з підтримкою каталогу товарів, замовлень, платежів та клієнтів.

28,269 v2.5.0 13 26