i18 support

i18next

i18next is a full-featured i18n javascript library for translating your webapplication.

Example demo text

{{ 'DEMO' | translate }}
You can change the language of demo text as well as the menu with simple function fire on buttons click. Try it:
EN ES
i18next configuration

Step 1

To add i18 support for your app you need to define what text you would like to translate. The best way to define your text is to store it in external config file. For example:

translations.js
function config($translateProvider) {

    $translateProvider
        .translations('en', {

            // Define all menu elements
            DASHBOARD: 'Dashboard',
            GRAPHS: 'Graphs',
            MAILBOX: 'Mailbox',

        })
        .translations('es', {

            // Define all menu elements
            DASHBOARD: 'Salpicadero',
            GRAPHS: 'Gráficos',
            MAILBOX: 'El correo',
        });

    $translateProvider.preferredLanguage('en');

}

Step 2

Next you need to add html indicators in all place you want to use i18.


    <span > { { 'MISCELLANEOUS' | translate } } </span>

Step 3

Next you need to add plugin module to your main app module:

 */
(function () {
    angular.module('inspinia', [
        'pascalprecht.translate',       // Angular Translate
    ])
})();

Step 4

After that if you want to change the language you just need to add buttons and fire the $translate.use(langKey) function.

HTML markup

<a class="btn btn-white set_en" ng-click="changeLanguage('en')" > Set EN language</a>

<a class="btn btn-white set_es" ng-click="changeLanguage('ns')" > Set ES language</a>

Javascript code

function translateCtrl($translate, $scope) {
    $scope.changeLanguage = function (langKey) {
        $translate.use(langKey);
        $scope.language = langKey;
    };
}

More info about specific function and configuration options you can find on official angular-translate documentation.

250 flags

Set of the 780 flag icons for all countries. All flags are avalible with 16x16, 32x32 and 64x64 size.

flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag flag