Увійти Реєстрація
Блог Серії
Кар'єра
Вакансії Компанії
Навчання
Документація Співбесіди Тестування Відео
Екосистема
Пакети Ресурси Проєкти Інструменти Події
Інше
Про нас Реклама
Документація 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 - і правильно робитиме. Але між «прочитати розділ рідною за десять хвилин» і «продиратися через нього годину зі словником» різниця не в зручності, а в тому, чи дочитає людина взагалі.

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

58

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

Коментарі

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

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

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

PayZephyr
Новини 12 вересня 2026

PayZephyr: Єдиний API для роботи з Stripe, Paystack та PayPal

PayZephyr - Laravel-пакет від Nwaneri Chukwunyere Kenneth, який об'єднує вісім платіжних провайдерів під одним зручним API. Підтримує автоматичне перемикання, захист від подвійної оплати, підписки та повернення коштів.

8
Laravel Telescope
Новини 11 вересня 2026

Artisan-команди для дебагу в Laravel Telescope 5.24.0

Laravel Telescope 5.24.0 додає дві нові Artisan-команди для роботи із записами із терміналу. Тепер можна переглядати запити, винятки, джоби та запити до бази даних без відкриття веб-інтерфейсу, а також отримувати дані у форматі JSON для скриптів та AI-агентів.

4

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

Zeeks Нова
Сьогодні

PHP (Laravel) Developer

PHP (Laravel) розробник для розвитку backend-платформи. Основні задачі: розробка multi-tenant ядра на Laravel, проєктування моделей даних для мультигео, REST API та інтеграції з зовнішніми сервісами, оптимізація продуктивності. Вимоги: 5+ років back-end досвіду (4+ з Laravel), PHP 8+, реляційні БД, API, кешування, Git/Docker/CI-CD, англійська B1+.

Zeeks Нова
Сьогодні

PHP Developer

PHP-розробник на Laravel для розвитку multi-tenant платформи. Основна робота: розвиток ядра на Laravel, проєктування моделей даних, розробка REST API, оптимізація продуктивності, технічне проєктування. Вимоги: 5+ років back-end розробки (4+ з Laravel), PHP 8+, реляційні БД, Git, Docker, CI/CD, англійська B1+.

dok.ua Нова
Сьогодні

Middle Backend developer PHP

Middle Backend розробник для високонавантаженої e-commerce платформи. Розробка на PHP 7.4+ з фреймворками Yii/Yii2, Laravel/Symfony. Основні задачі: оптимізація коду, робота з архітектурою систем, інтеграція API, участь у переході на мікросервісну архітектуру. Вимоги: 3+ років досвіду PHP, OOP, SOLID, 2+ років з Yii/Yii2, знання MySQL, Redis, RabbitMQ, Docker, Git, Scrum.

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

Bagisto

bagisto/bagisto

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

28,113 v2.5.0-beta2 13 25

Lang

laravel-lang/lang

Список 126 мов для Laravel Framework, Laravel Jetstream, Laravel Fortify, Laravel Breeze, Laravel Cashier, Laravel Nova, Laravel Spark та Laravel UI.

7,774 15.35.0 12