Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Blazor
  3. Blazor I18n/Localization Text

Blazor I18n/Localization Text

MPL-2.0C#

A class library for localizing text in Blazor applications using JSON/CSV files and static typing.

GitHubGitHub
285 stars29 forks0 contributors

What is Blazor I18n/Localization Text?

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.

Target Audience

Blazor developers building multi-language web applications who prefer a file-based, statically-typed localization workflow over traditional .NET resource files.

Value Proposition

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.

Overview

The class library that provides the ability to localize texts on your Blazor app!

Use Cases

Best For

  • Localizing Blazor WebAssembly apps hosted on static file servers
  • Building Blazor component libraries with built-in localization support
  • Teams preferring JSON/CSV translation files over .resx resources
  • Projects requiring IntelliSense and compile-time checks for translation keys
  • Applications using mixed render modes (SSR, Server, WebAssembly, Auto)
  • Developers wanting to avoid satellite assemblies and complex localization setups

Not Ideal For

  • Applications requiring plural form support for different languages
  • Projects deeply integrated with ASP.NET Core's IStringLocalizer for full-stack consistency
  • Teams needing to localize validation messages using DataAnnotation attributes without custom code

Pros & Cons

Pros

Strong Static Typing

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.

Full Blazor Compatibility

Supports all Blazor render modes (SSR, Server, WebAssembly, Auto), ensuring seamless integration across different hosting scenarios, per the README's feature list.

Plain Text Workflow

Uses simple JSON or CSV files for translations, eliminating the need for .resx files and complex tooling, making it accessible with any text editor.

Static Host Deployment

Works on static web hosts for Blazor WebAssembly without requiring an ASP.NET Core server, as highlighted in the README for broader deployment options.

Cons

Missing Advanced Features

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.

SSR Configuration Overhead

Requires additional setup with RequestLocalization middleware for SSR areas, adding complexity and potential for errors in Blazor apps with server-side rendering.

JavaScript Cache Busting Hassles

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.

Frequently Asked Questions

Quick Stats

Stars285
Forks29
Contributors0
Open Issues23
Last commit8 months ago
CreatedSince 2019

Tags

#webassembly#static-typing#internationalization#csharp#dotnet#i18n#localization#ssr#json#blazor

Built With

B
Blazor
S
Source Generators
.
.NET
C
C++

Included in

Blazor9.3k
Auto-fetched 9 hours ago

Related Projects

FluxorFluxor

Fluxor is a zero boilerplate Flux/Redux library for Microsoft .NET and Blazor.

Stars1,476
Forks168
Last commit1 month ago
Blazored.LocalStorageBlazored.LocalStorage

A library to provide access to local storage in Blazor applications

Stars1,326
Forks136
Last commit1 year ago
bUnit - a testing library for Blazor componentsbUnit - a testing library for Blazor components

bUnit is a testing library for Blazor components that make tests look, feel, and runs like regular unit tests. bUnit makes it easy to render and control a component under test’s life-cycle, pass parameter and inject services into it, trigger event handlers, and verify the rendered markup from the component using a built-in semantic HTML comparer.

Stars1,305
Forks120
Last commit23 hours ago
Blazor-StateBlazor-State

A Blazor State management library by TimeWarp.

Stars612
Forks57
Last commit14 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub