PHPackages                             tanmuhittin/laravel-easy-translate - 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. tanmuhittin/laravel-easy-translate

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

tanmuhittin/laravel-easy-translate
==================================

A package for database translations.

67PHP

Since Jun 28Pushed 8y ago1 watchersCompare

[ Source](https://github.com/tanmuhittin/laravel-easy-translate)[ Packagist](https://packagist.org/packages/tanmuhittin/laravel-easy-translate)[ RSS](/packages/tanmuhittin-laravel-easy-translate/feed)WikiDiscussions master Synced 2w ago

READMEChangelogDependenciesVersions (1)Used By (0)

laravel-easy-translate
======================

[](#laravel-easy-translate)

A package for database translations. This package is suitable for small to medium sized projects. For big projects I am planing a high performance version of this package using mongodb.

Installation
------------

[](#installation)

`composer require tanmuhittin/laravel-easy-translate`

`php artisan migrate --path=vendor/tanmuhittin/laravel-easy-translate/database/migrations `

You are ready to go.

Usage
-----

[](#usage)

Add this to your translatable models;

`use TanMuhittin\LaraTranslate\Traits\Translatable;`

then define translatable fields

`public $translatable_columns = ['name','content'];`

Now your models returns 2 additional fields; translatable, translated

Saving Translations
-------------------

[](#saving-translations)

Edit the translatable object returned by your model and save it. Example translatable object:

```
{
    name:'Default Name',
    content:'Default Content',
    created_at:01.09.1993 09:09:09,
    "translatable": {
              "en": {
                "name": {
                  "value": "enName"
                },
                "content": {
                  "value": "enContent"
                }
              },
              "tr": {
                "name": {
                  "value": "trName"
                },
                "content": {
                  "value": "trContent"
                }
              }
            }
        }
    .
    .
    .

```

Edited Version

```
{
    name:'Default Name',
    content:'Default Content',
    created_at:01.09.1993 09:09:09,
    "translatable": {
              "en": {
                "name": {
                  "value": "enName Edited"
                },
                "content": {
                  "value": "enContent Edited"
                }
              },
              "tr": {
                "name": {
                  "value": "trName Edited"
                },
                "content": {
                  "value": "trContent Edited"
                }
              }
            }
        }
    .
    .
    .

```

Saving Translations:

```
$model = new Posts;
$model->name = $request->get('name');
$model->content = $request->get('content');
if($request->has('translatable'))
    $model->trans = $request->get('translatable');
$model->save();

```

Thats it.

###  Health Score

21

—

LowBetter than 18% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity41

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.

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/7202383?v=4)[Muhittin Tan](/maintainers/tanmuhittin)[@tanmuhittin](https://github.com/tanmuhittin)

---

Top Contributors

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

### Embed Badge

![Health badge](/badges/tanmuhittin-laravel-easy-translate/health.svg)

```
[![Health](https://phpackages.com/badges/tanmuhittin-laravel-easy-translate/health.svg)](https://phpackages.com/packages/tanmuhittin-laravel-easy-translate)
```

###  Alternatives

[smmoosavi/php-gettext

Wrapper for php-gettext by danilo segan. This library provides PHP functions to read MO files even when gettext is not compiled in or when appropriate locale is not present on the system.

1926.6k1](/packages/smmoosavi-php-gettext)[laradevs/spanish

labels translated to spanish

166.7k](/packages/laradevs-spanish)

PHPackages © 2026

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