PHPackages                             sepremex/laramissingkey - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Localization &amp; i18n](/categories/localization)
4. /
5. sepremex/laramissingkey

ActiveLibrary[Localization &amp; i18n](/categories/localization)

sepremex/laramissingkey
=======================

Manage language files with ease.

1.0.1(1y ago)00MITPHPPHP ^8.2

Since Jun 5Pushed 1y agoCompare

[ Source](https://github.com/Sepremex/laramissingkey)[ Packagist](https://packagist.org/packages/sepremex/laramissingkey)[ Docs](https://github.com/sepremex/laramissingkey)[ RSS](/packages/sepremex-laramissingkey/feed)WikiDiscussions main Synced today

READMEChangelog (2)Dependencies (4)Versions (3)Used By (0)

🕵️‍♂️ Laramissingkey
====================

[](#️‍️-laramissingkey)

> Because sometimes... **you just want your damn translation keys in place**.

---

🤦 Why this package exists?
--------------------------

[](#-why-this-package-exists)

So... imagine working on a glorious Laravel app, multilingual AF, international ambitions, flags everywhere, buttons for French, Spanish, Martian, whatever.
Now imagine you're 42 routes deep, blade templates everywhere, controllers echoing `__('Welcome')` like gospel...

And then... **you realize Laravel doesn't give a damn if you're missing keys**.
Worse, those heroic packages that *promise* to find and sync them?

- Some are abandoned.
- Some scan only half your app.
- Some inject routes in your vendor folders like they own your project.
- One even needed me to **click a damn UI** to sync keys.

😐 Nah. **We got fed up.**
So, we did what any pissed-off dev does: **we wrote our own package.**

---

💡 What does it do?
------------------

[](#-what-does-it-do)

This thing runs:

```
php artisan lmissingkey:sync
```

And it does the following:

1. Searches your entire `app/` and `resources/views/` for translation keys like `__('key')` and `@lang('key')`
2. Reads all existing language files (both `.json` and `.php` grouped ones)
3. Finds which keys are missing
4. Appends only valid **flat keys** to the correct `/lang/{locale}.json` file
    - No duplicating `auth.failed` in the wrong place
    - No overwriting your carefully handcrafted artisan translations
5. Ignores anything Laravel might do to screw it up. Because trust issues.

---

🚀 Install
---------

[](#-install)

```
composer require sepremex/laramissingkey
```

---

🛠️ Usage
--------

[](#️-usage)

```
php artisan lmissingkey:sync
```

Boom. Missing keys get written into the right files.

---

❓ What it doesn't do (yet...)
-----------------------------

[](#-what-it-doesnt-do-yet)

- Doesn't edit your `/lang/{locale}/*.php` files (we're working on that)
- Doesn't translate for you (we're good, but not Google Translate on steroids)
- Doesn't throw glitter when it finds keys (maybe later)

---

🧠 Why not just fix existing packages?
-------------------------------------

[](#-why-not-just-fix-existing-packages)

Because some of them were written in 2016...
...by developers who now work for Meta, or raise goats in the Alps, or just don’t reply to GitHub issues anymore.

So we said:

> **"Let’s do it ourselves. And do it better."**

---

❤️ Credits
----------

[](#️-credits)

Brought to you by a highly caffeinated developer tired of missing `__('Submit')` for the 20th time.
Powered by rage, sarcasm, and love for clean code.

---

🐍 License
---------

[](#-license)

MIT. Fork it, break it, sell it to Elon, just don’t make it worse.

###  Health Score

28

—

LowBetter than 52% of packages

Maintenance47

Moderate activity, may be stable

Popularity0

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity50

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

394d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/24325545?v=4)[Sepremex](/maintainers/Sepremex)[@Sepremex](https://github.com/Sepremex)

---

Top Contributors

[![Sepremex](https://avatars.githubusercontent.com/u/24325545?v=4)](https://github.com/Sepremex "Sepremex (3 commits)")

---

Tags

laravellocalizationmultilingual

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/sepremex-laramissingkey/health.svg)

```
[![Health](https://phpackages.com/badges/sepremex-laramissingkey/health.svg)](https://phpackages.com/packages/sepremex-laramissingkey)
```

###  Alternatives

[laravel/ai

The official AI SDK for Laravel.

1.0k3.2M194](/packages/laravel-ai)[erag/laravel-lang-sync-inertia

A powerful Laravel package for syncing and managing language translations across backend and Inertia.js (Vue/React/Svelte) frontends, offering effortless localization, auto-sync features, and smooth multi-language support for modern Laravel applications.

4925.3k](/packages/erag-laravel-lang-sync-inertia)[illuminate/queue

The Illuminate Queue package.

21332.6M1.6k](/packages/illuminate-queue)[roots/acorn

Framework for Roots WordPress projects built with Laravel components.

9762.4M131](/packages/roots-acorn)[moonshine/moonshine

Laravel administration panel

1.3k253.1k81](/packages/moonshine-moonshine)[laravel/folio

Page based routing for Laravel.

603583.7k32](/packages/laravel-folio)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
