A class library for localizing text in Blazor applications using JSON/CSV files and static typing.
Toolbelt.Blazor.I18nText is a class library that provides localization capabilities for Blazor applications. It allows developers to manage translated text using JSON or CSV files, which are compiled into strongly-typed C# classes for use in Blazor components. The library solves the problem of integrating internationalization into Blazor apps without relying on .resx files or the standard IStringLocalizer approach.
Blazor developers building multi-language web applications who prefer a file-based, statically-typed localization workflow over traditional .NET resource files.
Developers choose Toolbelt.Blazor.I18nText for its simplicity, strong typing with IntelliSense support, compatibility with all Blazor render modes, and ability to work on static hosts without requiring ASP.NET Core.
The class library that provides the ability to localize texts on your Blazor app!
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Generates strongly-typed C# classes from JSON/CSV files, enabling IntelliSense and compile-time safety for translation keys, as shown in the README's GIF demonstrations.
Supports all Blazor render modes (SSR, Server, WebAssembly, Auto), ensuring seamless integration across different hosting scenarios, per the README's feature list.
Uses simple JSON or CSV files for translations, eliminating the need for .resx files and complex tooling, making it accessible with any text editor.
Works on static web hosts for Blazor WebAssembly without requiring an ASP.NET Core server, as highlighted in the README for broader deployment options.
Lacks support for plural forms, placeholder-based text formatting, and integration with ASP.NET Core localization, limiting its use in complex internationalization scenarios, as admitted in the Limitations section.
Requires additional setup with RequestLocalization middleware for SSR areas, adding complexity and potential for errors in Blazor apps with server-side rendering.
Involves a JavaScript file with version query string issues that necessitate environment variable or MSBuild property adjustments, as detailed in the README's configuration notes.