nobox / lazy-strings-laravel
Laravel 5 service provider for LazyStrings.
Requires
- php: >=5.5.9
- illuminate/console: 5.2.*
- illuminate/filesystem: 5.2.*
- illuminate/support: 5.2.*
- nobox/lazy-strings: ^5.0
Requires (Dev)
- mockery/mockery: 0.9.*
- orchestra/testbench: 3.2.*
- phpunit/phpunit: 4.7.*
This package is not auto-updated.
Last update: 2024-10-22 19:34:20 UTC
README
Laravel 5 service provider for LazyStrings.
Installation
Add Lazy Strings to your composer.json file.
composer require nobox/lazy-strings-laravel
Laravel versions
Here's a rundown on the version(s) of lazy strings that you can use on your current installed laravel version.
Register Lazy Strings
Register Lazy Strings service provider in the providers
array located in config/app.php
'providers' => [ Nobox\LazyStrings\LazyStringsServiceProvider::class, ]
Publish configuration and assets
This package uses some basic configuration and pretty CSS and JS from bootstrap.
php artisan vendor:publish
Configuration
Configuration is pretty simple, each configuration item is described below. More details on how these work can be found in the Lazy Strings repo here.
csv-url
Add the Google spreadsheet published url.
'csv-url' => 'http://docs.google.com/spreadsheets/d/1V_cHt5Fe4x9XwVepvlXB39sqKXD3xs_QbM-NppkrE4A/export?format=csv'
target-folder
This folder will be in yourstorage
folder and it just saves a backup of your strings inJSON
format. By default islazy-strings
.
'target-folder' => 'lazy-strings'
strings-route
This is the route that will be used to generate the strings. Visithttp://my-app.com/lazy/build-copy
and your strings will be updated. By default isbuild-copy
. The route will always be under thelazy
prefix.
'strings-route' => 'build-copy'
nested
Whether or not you wish your generated strings array to be nested.
'nested' => true,
sheets
Here you'll specify all the sheets in your Google doc.
'sheets' => [ 'en' => [0, 1626663029], 'es' => 1329731586, 'pt' => 1443604037 ]
How it works
Lazy Strings uses an id => value
convention to access the copy, it generates an lazy.php
file inside the language locale folder. You can see an example doc here: https://docs.google.com/a/nobox.com/spreadsheets/d/1V_cHt5Fe4x9XwVepvlXB39sqKXD3xs_QbM-NppkrE4A/edit#gid=0.
In this doc you can access the first row in your view like this:
trans('lazy.foo') // returns "Hello!"
Or in your controller like this:
Lang::get('lazy.foo'); // returns "Hello!"
Generate your strings
Each time you need to generate your strings just visit the specified strings-route
in your configuration. The route will always be under the lazy
prefix. For example: http://my-app.com/lazy/build-copy
You can also use the included artisan command php artisan lazy:deploy
. It will do exactly the same. This is perfect when you're deploying your application with Forge or Envoyer.
License
MIT