I tried out a few different options, including Angular Translate, but I liked Angular-gettext the best so far.
One thing that helped tremendously is that there's a working demo for it where they i18n TodoMVC, called angular-gettext-example.
The workflow is simple:
- Add the "translate" directive to your templates
- Run grunt to extract .pot template(s)
- Hand off the .pot to your translation vendor or DIY with POEdit or similar software
- Drop the .po translation files back into your project
- Run grunt to compile the .po files
- Set the default language in your scope
- Watch the magic!
I'm sure the other solutions posted here are good as well but I haven't seen an end-to-end example so nicely organized as angular-gettext-example.
Cheers,
JD