Skip to content
master
Go to file
Code

Latest commit

 

Git stats

Files

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

README.md

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
You can’t perform that action at this time.