
Blazor WASM supports localization (i18n) — displaying text, dates, numbers, and currencies according to the user's culture and language preferences.
// Program.cs
builder.Services.AddLocalization();
// Set culture:
var culture = new CultureInfo("es-ES");
CultureInfo.DefaultThreadCurrentCulture = culture;
CultureInfo.DefaultThreadCurrentUICulture = culture;Resources/Pages/Index.resx — default EnglishResources/Pages/Index.es.resx — Spanish@inject IStringLocalizer<Index> L
<h1>@L["WelcomeTitle"]</h1>
<p>@L["WelcomeMessage", userName]</p>Once the culture is set, C# format strings automatically use the correct locale:
@price.ToString("C") // $1,234.56 in en-US, €1.234,56 in de-DE
@date.ToString("D") // Culture-appropriate long dateStore the user's preference in localStorage and reload the page with the new culture set via JS interop.
Reference:
TaskLoco™ — The Sticky Note GOAT