AngularJS Example:
by PascalPrecht
HTML
<link rel="stylesheet" href="http://twitter.github.com/bootstrap/assets/css/bootstrap.css">
<div ng-app="myApp" ng-controller="ctrl">
<header>
<button ng-click="toggleLang()">Toggle Language</button>
<h1>{{ 'HEADLINE' | translate }}</h1>
<h3>{{ 'SUB_HEADLINE' | translate }}</h3>
<p>By <a href="http://twitter.com/PascalPrecht">{{ 'AUTHOR_NAME' | translate }}</a> - <a href="http://github.com/PascalPrecht/ng-translate">{{ 'GITHUB_LINK_TEXT' | translate }}</a></p>
</header>
<section>
<h2>{{ 'GETTING_STARTED_HEADLINE' | translate }}</h2>
<h3>{{ 'HEADLINE_FILTER' | translate}}</h3>
<p>{{ 'INFO_TEXT_TRANSLATE_FILTER' | translate }}</p>
<h5>{{ 'HEADLINE_USAGE' | translate}}</h5>
<pre><code ng-non-bindable><ANY>{{ 'TRANSLATION_ID' | translate }}</ANY></code></pre>
<h4>{{ 'HEADLINE_FILTER_DYN_VALUES' | translate }}</h4>
<p>{{ 'INFO_TEXT_TRANSLATE_FILTER_2' | translate }}</p>
<p>{{ 'INFO_TEXT_TRANSLATE_FILTER_3' | translate }}</p>
<pre><code ng-non-bindable>$translateProvider.translations({
'T_ID': 'Lorem ipsum {{value}}'
});</code></pre>
<p>{{ 'INFO_TEXT_TRANSLATE_FILTER_4' | translate }}</p>
<pre><code ng-non-bindable>// Passing values via string expression
<ANY>{{ 'TD_ID' | translate:'{"value": 3}' }}</ANY>
// Passing values via scope object
<ANY>{{ 'TD_ID' | translate:anyObjectOnScope }}</ANY>
</code></pre>
<h3>{{ 'HEADLINE_DIRECTIVE' | translate }}</h3>
<p>{{ 'INFO_TEXT_TRANSLATE_DIRECTIVE' | translate }}</p>
<pre><code ng-non-bindable><ANY translate>TRANSLATION_ID</ANY> // Use content as translation id
<ANY translate="TRANSLATION_ID"></ANY> // Pass translation id as attribute value
<ANY translate>{{translationIdOnScope}}</ANY> // Use content as translation id with string interpolation
<ANY...
JavaScript
// Including ngTranslate
angular.module("ngTranslate",["ng"]).config(["$provide",function(t){$TranslateProvider=function(){var t,n={};this.translations=function(t,r){if(!t&&!r)return n;if(t&&!r){if(angular.isString(t))return n[t];n=t}else n[t]=r},this.uses=function(r){if(!r)return t;if(!n[r])throw Error("$translateProvider couldn't find translationTable for langKey: '"+r+"'");t=r},this.$get=["$interpolate","$log",function(r,a){return $translate=function(e,i){var l=t?n[t][e]:n[e];return l?r(l)(i):(a.warn("Translation for "+e+" doesn't exist"),e)},$translate.uses=function(n){return n?(t=n,void 0):t},$translate}]},t.provider("$translate",$TranslateProvider)}]),angular.module("ngTranslate").directive("translate",["$filter","$interpolate",function(t,n){var r=t("translate");return{restrict:"A",scope:!0,link:function(t,a,e){e.$observe("translate",function(r){t.translationId=angular.equals(r,"")?n(a.text())(t.$parent):r}),e.$observe("values",function(n){t.interpolateParams=n}),t.$watch("translationId + interpolateParams",function(){a.html(r(t.translationId,t.interpolateParams))})}}}]),angular.module("ngTranslate").filter("translate",["$parse","$translate",function(t,n){return function(r,a){return angular.isObject(a)||(a=t(a)()),n(r,a)}}]);
// Configuring your module, asking for ngTranslate as dependency
var app = angular.module('myApp', ['ngTranslate']);
// Configuring $translateProvider
app.config(['$translateProvider', function ($translateProvider) {
// Simply register translation table as object hash
$translateProvider.translations('en_EN', {
'HEADLINE': 'Introducing ngTranslate',
'SUB_HEADLINE': 'Translations for your Angular Apps!',
'AUTHOR_NAME': 'Pascal Precht',
'GITHUB_LINK_TEXT': 'View source on GitHub',
'GETTING_STARTED_HEADLINE': 'Getting Started',
'HEADLINE_FILTER': 'ngTranslate::translateFilter',
'HEADLINE_USAGE': 'Usage:',
'HEADLINE_FILTER_DYN_VALUES': 'Translations with dynamic...