An open API service indexing awesome lists of open source software.

https://github.com/lofcz/tereo

Modern localization system supporting both C# and TS targets. An opinionated replacement for resx.
https://github.com/lofcz/tereo

csharp i18n localization netcore typescript

Last synced: 8 months ago
JSON representation

Modern localization system supporting both C# and TS targets. An opinionated replacement for resx.

Awesome Lists containing this project

README

          

# Te Reo .NET

Te Reo Icon
An opinionated localization system replacing resx files. Reo is an application that facilitates the translation process and a codegen system targeting both C# and TS. Reo works best on .NET 8+ projects, taking advantage of modern collections when available but is usable for any project targeting netstandard2.0 and newer.



## Features
- Fast & smart search in keys and values (translations) thanks to [FastDex](https://github.com/lofcz/fastdex).
- Tracks dates the keys were added and touched for easy review of the translations changed in a given period.
- Automatically infers keys based on the primary value, after memorizing the conventions used navigating the source code is much easier than with conventional localization systems.
- Atomic depth of translations - one page can use multiple languages simultaneously for different frames if needed.
- Familiar interface, swap `Resource.Key` for `Reo.Key` and you are good to go.
- Generate translations with one click (DeepL).
- Performs `~3x` better than `resx` on .NET 8+ at runtime (measured on a project with several thousand keys).
- Group keys into logical groups and set codegen targets on each group separately.
- Strongly typed TS codegen with full intellisense that works for frontend just as amazingly as `Reo.X` for backend, while loading keys lazily at runtime.
- WYSIWYG editor for keys with markup.
- Smart codegen supporting `MarkupString` for projects using Blazor.
- Standalone application for managing translations, usable as a web app or a native MAUI executable.
- Infinite undo/redo with full history jumping.
- First-class support for keys that should be excluded from the auto-translation process, such as image paths.