Skip to content
CAI
Software that uses CAICheck a score

Laravel-Lang/lang

60.2

Adequate · 26 September 2026

1.2k

lines of production code

PHP

primary language

4

measurements over time

CAI band scale
CAI trend line
CAI lens gauges

What this system is

This system is a localization publisher for the Laravel ecosystem that automatically maps and applies translation files for various framework versions and packages. It supports Laravel 11 through 13, along with associated tools like Nova, Jetstream, Fortify, and Passkeys, by providing version-specific configuration plugins. The core capability is ensuring that applications receive correct, user-friendly English strings for authentication, validation, and UI elements without manual configuration.

How it got here

2013–2022 — Laravel 11-13 and Nova 5 support

10 changes.

The project expanded its plugin registry to support Laravel versions 11, 12, and 13, alongside updates for Jetstream 5, Fortify, Spark, and Laravel UI v4. Significant additions included dedicated translation support for Laravel Nova 4.x and 5.x, as well as the Nova Log Viewer. The work also established a base test case for plugin testing and updated dependencies for PHP 8.2+ and PHPUnit 11/12.

2023–2026 — Localization and framework version support

5 changes.

This period focused on expanding internationalization support by adding comprehensive localization files for Laravel Nova, the Dusk Suite, and the Passkeys plugin. It also involved integrating configuration and language assets for newer Laravel framework versions, specifically 12.x and 13.x, to ensure compatibility and consistent user-facing messages.

Features

Add Passkeys plugin translations

The Passkeys plugin has been added to the language pack, enabling translation support for the laravel/passkeys package. This change maps the package's main and extended JSON translation files to the appropriate locale files, allowing users to localize Passkeys-related strings.

src/Plugins/Passkeys · high confidence

Added Laravel 12.x framework configuration files

This change introduces the initial configuration files for Laravel 12.x support within the framework directory. It adds \auth.php\ with default authentication error messages, \framework.json\ containing standard application translation strings, \pagination.php\ for pagination labels, \passwords.php\ for password reset notifications, and \validation.php\ with the complete set of validation rule messages. These files provide the necessary language and configuration defaults required for applications targeting the Laravel 12.x version.

source/framework/11.x, source/framework/12.x · high confidence

Added Laravel 13.x framework support

This change adds support for the Laravel 13.x framework by introducing new configuration files for authentication, validation, pagination, and password reset messages. Users can now utilize this package with Laravel 13, benefiting from the updated default validation rules (such as \any\_of\, \doesnt\_contain\, \missing\, and \ulid\) and standard framework language strings provided in the new \auth.php\, \validation.php\, \pagination.php\, and \passwords.php\ files.

source/framework/13.x · high confidence

Added Laravel Nova 4.x translation and validation language files

This change introduces the initial language resource files for Laravel Nova 4.x, specifically \nova.json\ and \validation.php\. The \nova.json\ file provides a comprehensive set of English translations for the Nova admin panel interface, covering actions, resources, dashboard elements, and country names. The \validation.php\ file adds specific validation error messages for Nova's custom rules, such as 'attached' and 'relatable', ensuring proper user feedback when these constraints are violated.

source/nova/4.x · high confidence

Added Laravel Nova 5.x localization and validation language files

This change introduces the initial language and validation files for Laravel Nova 5.x. The new \nova.json\ file provides English translations for core UI strings, including authentication flows (login, password reset, email verification), resource management actions (create, edit, delete, detach, restore), and general interface elements (search, filters, pagination). Additionally, \validation.php\ defines specific validation error messages for relatable and attached attributes, ensuring proper user feedback when validation constraints are violated in the Nova admin panel.

source/nova/5.x · high confidence

Added Laravel Nova Dusk Suite localization files

The Laravel Nova Dusk Suite now includes localization assets to support internationalization in its browser tests. This change adds a \dusk-suite.json\ file containing core UI strings (such as login, registration, and dashboard labels) and a comprehensive \en.json\ file covering the full English translation set for Nova resources, actions, and notifications. Additionally, a \validation.php\ file provides specific validation error messages for attached and relatable attributes, ensuring test assertions and user-facing messages align with the localized application state.

source/nova/dusk-suite · high confidence

Added default English translation strings for Laravel framework components

The framework now includes default English translation files for authentication, validation, password reset, pagination, and general framework messages. This ensures that users see standard, user-friendly error and status messages (such as 'These credentials do not match our records' or 'The :attribute field must be a valid email address') out of the box, rather than raw translation keys, without requiring manual configuration of these specific language files.

source/framework/master · high confidence

Added localization support for Laravel 11, 12, 13, and Jetstream 5

The plugin system now includes dedicated configuration classes for Laravel Framework versions 11, 12, and 13, as well as Jetstream version 5. These additions enable the publisher to automatically detect and apply locale-specific translations for framework files (such as auth, pagination, passwords, and validation) and Jetstream assets corresponding to these specific major versions.

src/Plugins/Laravel · high confidence

Added plugin definitions for Laravel Fortify and Spark payment integrations

The publisher now includes dedicated plugin configurations for Laravel Fortify (supporting both the dev-master branch and version 1.x) and Laravel Spark with Paddle and Stripe payment gateways. These new plugin classes map specific JSON translation files from these vendors to the publisher's locale structure, enabling automatic translation support for these specific Laravel ecosystem packages.

src/Plugins/Fortify · high confidence

Added support for Laravel 11, 12, and 13 alongside new plugin integrations

The plugin registry has been updated to include translation support for Laravel 11, 12, and 13, as well as Breeze 2, Jetstream 5, Cashier Stripe 15, Nova 5, Nova Log Viewer, Nova Dusk Suite, and Passkeys. This change ensures that users of these specific framework versions and packages will receive the correct localized strings for their applications.

src · high confidence

Added support for Laravel Nova 5 translations

The plugin now includes a dedicated configuration class (V5.php) to handle translation files for Laravel Nova version 5. This addition allows users to localize Nova's interface and validation messages when using the 5.x series, alongside the existing support for version 4.

src/Plugins/Nova · high confidence

Added support for Laravel Nova Log Viewer translations

The Log Viewer plugin now supports the laravel/nova-log-viewer package (versions dev-main or ^0.1.0), mapping its locale files to the vendor directory.

src/Plugins/Nova/LogViewer · high confidence

Added support for Laravel UI v4

The UI plugin now includes a dedicated configuration for Laravel UI version 4 (v4.0), allowing the publisher to apply locale translations specific to this major version. This is implemented via a new V4 plugin class that maps to the 'ui/4.x/ui.json' translation file, complementing the existing master branch support.

src/Plugins/UI · high confidence

Test coverage

Added base test case for plugin testing

Added a new \PluginTest\ class in the \tests\ directory that extends the base test case from \LaravelLang\\StatusGeneratorTests\, establishing the foundation for plugin-related test coverage.

tests · high confidence

Dependencies

Updated composer.json with Laravel 11 compatibility and dependency bumps

The package now requires PHP 8.2+ and Laravel Lang Publisher 16, while dev dependencies have been updated to include PHPUnit 11/12, dragon-code/codestyler 6, and laravel-lang/status-generator 2.11. A conflict block prevents installation with Laravel Framework versions prior to 11.0.7, ensuring compatibility with the latest Laravel release.

(dependencies) · high confidence

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

How this codebase got here

This is the PUBLIC form of this artifact. Findings are listed in full, but the details of SECURITY findings — which rule fired, in which file, on which line, and how to fix it — are deliberately withheld, and any secret-scanner results are excluded entirely. Where detail is absent here it was REMOVED FOR PUBLICATION; it is not missing from the analysis. The complete artifact is available from the repository owner.

Score

  • CAI 43 → 60 (+17.1)
  • Rubric changed (rubric-2026.08.15 → rubric-2026.09.15) — scores are not directly comparable.

Lenses

  • Code Health 100 → 100 (+0.0)
  • Architecture 69 → 69 (+0.0)
  • Maturity 52 → 52 (+0.0)
  • Readiness 32 → 69 (+36.7)
  • Security 40 → 60 (+19.6)

Resolved (14)

  • Coverage not measured — test suite did not build
  • Dimension evaluation failed
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • LLM evaluation failed
  • No exposed public API
  • No tests found
  • Test reliability not included

New (43)

  • Dependency hygiene PARTLY measured — Composer dependencies read, no committed lock to grade for currency
  • Documentation: contradicts the code (docs/status.md)
  • Documentation: no contributor guidance
  • Documentation: no installation or build instructions
  • Documentation: no installation or build instructions (README.md)
  • Documentation: no licence statement
  • Documentation: no project overview
  • Documentation: no usage examples
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • High: security finding (details withheld)
  • …and 23 more

Changes since last survey

  • 50 commits — 41 feature/other, 9 fixes

By area

  • docs/status.md — 11 commits
  • locales/fr — 5 commits
  • docs/statuses — 4 commits
  • locales/ja — 4 commits
  • locales/tg — 4 commits
  • locales/ko — 3 commits
  • source/framework — 3 commits
  • (repo) — 2 commits
  • locales/af — 2 commits
  • locales/de — 2 commits
  • locales/es — 2 commits
  • source/breeze — 2 commits
  • locales/ar — 1 commit
  • locales/hu — 1 commit
  • locales/it — 1 commit
  • locales/pl — 1 commit
  • locales/ru — 1 commit
  • locales/zh_TW — 1 commit

Notable commits

  • fix: Fix Italian auth.password translation containing a stray :attribute (#8401)
  • fix: [es]: Fix validation translation: between (#8375)
  • fix: [tg]: Fix Russian leftovers and broken grammar in validation messages (#8381)
  • fix: [tg]: Fix machine-translated strings in json.json (#8385)
  • fix: [tg]: Fix terminology and remaining machine-translated validation messages (#8392)
  • fix: [zh_TW]: Fix Simplified chars, Mainland terms, mistranslations and inconsistencies (#8377)
  • fix: fix wrong translation (#8400)
  • fix: fix: add forgotten period (#8404)
  • fix: fix: correct the sentence (#8383)
  • change: Add missing Polish translations (#8361)
  • change: Add missing auxiliary verb "a" for passé composé (#8403)
  • change: [ar]: Translate new keys in inline and full PHP translations (#8368)
  • change: [de]: Translated missing keys (#8419)
  • change: [de]: Translated missing values (#8363)
  • change: [es]: Update Spanish Translations (#8408)
  • change: [fr]: Translate the Laravel 13 notification subjects and two validation rules (#8402)
  • change: [fr]: Translated missing value and fixed punctuation (#8370)
  • change: [hu,ko,lt,sl,sq,sr_Cyrl,sr_Latn,sr_Latn_ME,tr]: Restore corrupted placeholders (#8374)
  • change: [ja]: fix typo in locales/ja/json.json (#8379)
  • change: [ja]: wrong translation in locales/ja/json.json (#8382)
  • …and 30 more

Written by watchdog.canine.dev from the codebase's own history, inside the signed delivery this page is composed from.

Survey your own repository

Laravel-Lang/lang was measured the same way every project in this corpus was: the same rubric, at a pinned commit, with the result published in full. Point a surveyor at a repository you know and see whether you agree with it.

About this page

  • The score is its most recent published measurement, taken on 26 September 2026 at a pinned commit. It is not a live figure and does not change until the project is measured again.
  • Measured at commit 34e84328dc5d7e9008a065548f1e845115b86742 — the exact code this score is about.
  • Scored under rubric-2026.09.15 — the same rubric and the same method as every other entry in this index.
  • Measured by watchdog.canine.dev using codehealth-analyzer preprod-a15879f6f801.