Я адаптував свій schema viewer під кольори вашого застосунку

Перекладено ШІ 0 Alberto Arena 05 серпня, 2026

Truss 1.6 дозволяє адаптувати інтерфейс ER-діаграм під фірмові кольори вашого Laravel-застосунку. Нова CLI-команда автоматизує експорт схем, що допомагає назавжди забути про розбіжності в документації.

Pantone colour swatches fanned out in a circle on a concrete surface

Truss — це інтерактивна ER-діаграма структури бази даних вашого застосунку на Laravel. Вона безпечна для використання в production, оскільки працює виключно у режимі читання. Я презентував її в липні, і відтоді вона стала частиною кожного клієнтського проєкту, захищена policy viewTruss. Проте дві речі не давали мені спокою. По-перше, дашборд завжди залишався фірмового синього кольору Truss, незалежно від брендингу клієнта. По-друге, кнопка експорту (у Markdown або DBML) натискалася лише тоді, коли я про це згадував. Через це файл схеми в репозиторії часто не відповідав реальному стану бази, що зазвичай помічали занадто пізно.

Truss 1.6 вирішує обидві проблеми: додає систему тем для дашборду та команду truss:export для термінала та CI-пайплайнів, що позбавляє потреби відкривати браузер.

Адаптація під ваш застосунок

Налаштування кольорів та шрифтів тепер знаходяться в truss.theme. Truss автоматично змінює скіни для світлого та темного режимів:

// config/truss.php
'theme' => [
    'colors' => [
        'light' => [
            'accent' => '#b45309',
            'accent-secondary' => '#0f766e',
            'background' => '#faf6f0',
            'surface' => '#fffdf8',
            'text' => '#3a2a1c',
            'border' => '#c8873f',
        ],
        'dark' => [
            'accent' => '#fbbf24',
            'background' => '#1b130b',
            'surface' => '#26190d',
            'text' => '#f5e6d0',
            'border' => '#8a6428',
        ],
    ],
],

Перезаписуються лише вказані вами параметри, решта залишається в палітрі Blueprint за замовчуванням. Кастомізація досить глибока: змінюються не лише панелі, а й лінії зв’язків на діаграмі, фонова сітка та рядки таблиць. Стилі працюють як same-origin stylesheet без додаткового етапу збірки (build step). Кожне значення валідується, тому помилка в коді просто поверне стандартний колір замість того, щоб «зламати» верстку.

Підбирати hex-значення вручну не обов’язково. Новий theme builder дозволяє переглядати палітру наживо, використовувати пресети (Blueprint, Ember, Contrast) та генерує готовий код для config/truss.php.

The Truss theme builder in light mode: colour knobs on the left, the schema diagram re-skinned in a warm amber and teal palette on the right

Експорт схеми без браузера

php artisan truss:export --format=dbml --output=docs/schema.dbml
php artisan truss:export --format=json --check

truss:export — це CLI-аналог кнопки експорту. Команда підтримує п’ять форматів (DBML, JSON, CSV, Markdown та Mermaid), які генеруються безпосередньо через PHP. Завдяки детермінованому виводу однакова схема завжди створює ідентичний файл. Це робить прапор --check надзвичайно корисним: додайте команду в commit hook або CI, і вона видасть помилку, як тільки структура бази даних перестане відповідати файлу в репозиторії. Жодних мережевих запитів — тільки аналіз структури.

Спробувати

Оновитися можна командою composer update albertoarena/laravel-truss.

Що далі

Наступним у roadmap є Lighthouse CI: автоматизований аудит продуктивності та доступності для обох тем. Далі за планом: нові правила truss:doctor, підтримка Eloquent-зв'язків для смислових міток замість звичайних foreign keys, а також контекст схеми, адаптований для AI-агентів. Якщо вам бракує певних налаштувань теми або форматів експорту, створюйте обговорення.

Примітки

4 серпня 2026 року посилання на реліз v1.6.0 було замінено на посилання на повний changelog, оскільки версія v1.6.1 вже містить виправлення для попереднього оновлення.

Популярні

Інше, що варто прочитати

27 Оновлено 26 червня, 2026

"SQLSTATE[HY000] [2002] Connection refused" у Laravel в GitHub Actions

Чи стикалися ви з помилкою «SQLSTATE[HY000] [2002] Connection refused» під час налаштування GitHub Actions для вашого додатку на Laravel? У нашій статті ми розглянемо три поширені причини цієї помилки та надамо рішення для їх усунення. Читайте далі, щоб дізнатися, як ваш CI/CD потік може працювати бездоганно!

19 Оновлено 26 червня, 2026

Використання штучного інтелекту для управління перекладами в Laravel

Досліджуйте нові можливості локалізації вашого Laravel-додатку з пакунками, які використовують штучний інтелект, такими як ChatGPT та Claude. Які рішення можуть спростити ваш процес перекладу та зробити його більш точним? Читайте далі, щоб дізнатися більше!

15 Оновлено 26 червня, 2026

Як задокументувати кілька API в Laravel за допомогою Scramble

Ви знали, що в одному додатку Laravel можна реалізувати кілька API? У нашій статті ви дізнаєтеся, як за допомогою Scramble легко документувати різні версії API та налаштувати доступ до документації, щоб зробити її публічною або приватною. Читайте далі, щоб дізнатися більше