A simple, developer-friendly text localization library for Clojure and ClojureScript applications.
Tempura is a text localization library designed for Clojure and ClojureScript applications. It simplifies the process of supporting multilingual text by providing a single-function API that allows developers to embed default content directly in code and manage versioned translations. It solves the problem of adding internationalization without bogging down development with complex setup.
Clojure and ClojureScript developers building applications that require multilingual text support, particularly those who value a simple API and incremental localization.
Developers choose Tempura for its minimal API, gettext-like convenience with enhanced versioning, high performance through compilation, and flexibility with formats like Hiccup and React.js, all while focusing solely on translation.
Simple text localization library for Clojure/Script
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Centered on a single translation function (tr), it simplifies integration and usage without complex setup, as highlighted in the README's focus on developer experience.
Works out-of-the-box with plain text, Hiccup, React.js, and optional Markdown-like styles, allowing seamless integration into diverse UI frameworks.
Uses compilation and smart caching to match or exceed Clojure's `format` performance, ensuring efficient translations in production applications.
Exceeds gettext by handling unique content IDs for versioned translations, useful for evolving projects with changing text requirements.
Focuses solely on text translation, lacking built-in support for other i18n aspects like date, time, or number formatting, which the README explicitly notes as out of scope.
Uses EDN format, which is specific to Clojure ecosystems, making it less accessible for teams using other technologies or preferring standard formats like JSON without conversion steps.
Translation management is code-based, relying on EDN files, which may not suit workflows requiring visual tools for non-developers or collaborative editing.