Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
src
 
 
 
 
 
 
 
 

Lingo
Latest Stable Version Total Downloads

A file based translation manager, which unlike other Lang managers don't need a database connection to handle the translation.


Installation

  • composer require ctf0/lingo

  • (Laravel < 5.5) add the service provider

    'providers' => [
        ctf0\Lingo\LingoServiceProvider::class,
    ]
  • publish the package assets with

    php artisan vendor:publish --provider="ctf0\Lingo\LingoServiceProvider"

  • after installation, run php artisan lingo:setup to add

    • package routes to routes/web.php
    • package assets compiling to webpack.mix.js
  • install dependencies

    yarn add vue vue-ls vue-notif vue-clipboard2 vue-tippy@v2 vue-awesome@v2 axios fuse.js
  • add this one liner to your main js file and run npm run watch to compile your js/css files.

    • if you are having issues Check
    // app.js
    
    window.Vue = require('vue')
    
    require('../vendor/Lingo/js/manager')
    
    new Vue({
        el: '#app'
    })

Features

  • filter by keys.
  • sort table by keys or by values.
  • add/remove "vendor/locale/file/item".
  • show guiding steps while adding new vendor for better UX.
  • validate for "vendor/locale/file" existence on the fly.
  • use localStorage to remember opened "tab/vendor/files/copy-format".
  • support up to 3 levels deep on nested keys.
  • support all laravel translation key formats.
  • directly copy translation key along with placeholders through tool-tips
    ex.trans('Vendor::file.key', ['attr'=>'']).
  • copy/paste items from one file to another.
  • merge/destruct multiple items.
  • highlight changed key/value.
  • download vendor/file.
  • show/hide different elements to avoid noise & keep the user focused.
  • shortcuts
operation keyboard
reset search "when focused" esc
hide modal esc

Usage

Demo

  • visit localhost:8000/lingo

Security

If you discover any security-related issues, please email ctf0-dev@protonmail.com.