Package: elm-fluent
elm-fluentelm-fluent is aFluentimplementation for Elm.Fluent is a next-generation translation/localization solution, designed by the
folks at Mozilla, based on many years of experience with localizing into a large
number of different languages. Mozilla have extracted parts of their ‘l20n’
solution (used by apps like Firefox and Thunderbird) into a re-usable
specification designed specifically for the web.elm-fluent is a full implementation of this specification for Elm (see thechange logfor exact
version support).It operates as a command line tool that compiles.ftlfiles to.elmfiles. The result is that each message becomes a function that will generate a
translated string (or HTML fragment) for a given locale and an optional set of
strongly typed parameters (string, dates or numbers).Dates and numbers can also be passed with formatting parameters supplied - for
example, to attach a currency to a number, so that it can be correctly formatted
as a currency according to the rules of the locale in use.Please see thedocsfor more
information.For discussion regarding Fluent, including elm-fluent, see also theMozilla
Discourse Fluent category.StatusRough around the edges, but being used in production. Please see the list ofopen issues.A pretty complete test suite, and sufficient docs.Good attention to usability in terms of nice error messages.Compatibility: Elm 0.18 only.Elm 0.19 is problematic - we require a wrapper forIntl,
but Elm doesn’t have one yet and the restriction on native modules blocks us
from writing our own.It is unclear if/when an official wrapper will be provided, or whether it will
be suitable for elm-fluent. We useelm-intlwhich has proved ideal for our
usage, but the core team apparentlyquickly dismissedadoption of a library like that.In light of this, and other problems caused by the restriction on native
modules in 0.19, the author of elm-fluent may well be forced to move away from
Elm. In this event the most likely outcome is a migration tobucklescriptwithbucklescript-teaand elm-fluent will be
forked to target that platform instead. This repo will not be deleted but
further development will likely stop.Free software: MIT licenseCreditsThis package was created withCookiecutterand theaudreyr/cookiecutter-pypackageproject template.History0.6.0 (2020-04-09)Big rewrite of the type inference/checking mechanism, with more accurate
error messages now.0.5.0 (2019-08-15)Updated to Syntax 1.0 (fluent.syntax 0.15)Various bug fixes and small improvements0.4.0 (2019-03-18)ftl2elm –include optionDropped Python 2.7 support0.3.0 (2019-03-06)Syntax 0.8 support, including parameterized terms.Better compile-time resolution of some expressions.0.2.1 (2018-12-19)Fixed python-fluent dependency to an older version (< 0.9), because it
doesn’t work with newer versions. Thanks @stasm for the report.0.2.0 (2018-09-10)Better handling for a large variety of error conditionsProper fallback mechanism implementedAdded--watchoption.Eliminate unused imports from generated codeVarious bug fixes:Avoid outputting.elmfiles with no exportsBugs with HTML attributes and non-string message argsCrasher with multi-line messagesCrasher when a message is missing from default locale0.1.0 (2018-07-27)First release on PyPI.