This document discusses internationalization (i18n) in JavaScript. It begins by explaining what i18n is and how it can be supported on the server side using GNU gettext. It then introduces AngularJS and angular-gettext, which allow i18n to be supported in the client side by extracting text from Angular code and converting translations to JSON format. Angular-gettext directives and functions enable translated text to be loaded and displayed without tying client code to the server framework.