FacilGuide 0.1.0

dotnet add package FacilGuide --version 0.1.0
                    
NuGet\Install-Package FacilGuide -Version 0.1.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="FacilGuide" Version="0.1.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FacilGuide" Version="0.1.0" />
                    
Directory.Packages.props
<PackageReference Include="FacilGuide" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add FacilGuide --version 0.1.0
                    
#r "nuget: FacilGuide, 0.1.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package FacilGuide@0.1.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=FacilGuide&version=0.1.0
                    
Install as a Cake Addin
#tool nuget:?package=FacilGuide&version=0.1.0
                    
Install as a Cake Tool

FacilGuide .NET

Multilingual URL routing, hreflang generation, and reading level analysis for building accessible, multi-language websites. Designed for the Facil.guide platform, which publishes senior-friendly tech guides in five languages: English, Spanish, French, Portuguese, and Italian.

Installation

dotnet add package FacilGuide

Quick Start

Localize a URL path, generate hreflang tags, and check if content is senior-friendly:

using FacilGuide;

// Localize paths for different audiences
var spanishPath = PathLocalizer.Localize("/guides/wifi-setup", Locale.Es);
Console.WriteLine(spanishPath);
// => /es/guides/wifi-setup

// Detect locale from an incoming request path
var detected = PathLocalizer.DetectLocale("/fr/guides/email");
Console.WriteLine(detected);
// => Fr

Hreflang Tags

Generate complete hreflang link sets for multi-language SEO. Each call produces links for all five locales plus an x-default entry:

var html = HreflangBuilder.ToHtml("/guides/wifi-setup");
Console.WriteLine(html);
// <link rel="alternate" hreflang="en" href="https://facil.guide/guides/wifi-setup" />
// <link rel="alternate" hreflang="es" href="https://facil.guide/es/guides/wifi-setup" />
// <link rel="alternate" hreflang="fr" href="https://facil.guide/fr/guides/wifi-setup" />
// <link rel="alternate" hreflang="pt" href="https://facil.guide/pt/guides/wifi-setup" />
// <link rel="alternate" hreflang="it" href="https://facil.guide/it/guides/wifi-setup" />
// <link rel="alternate" hreflang="x-default" href="https://facil.guide/guides/wifi-setup" />

Or work with structured data instead of raw HTML:

var links = HreflangBuilder.Build("/guides/wifi-setup");
foreach (var link in links)
    Console.WriteLine($"{link.Locale} => {link.Href}");

Reading Level Assessment

Check whether content meets senior-friendly readability standards. The assessor uses the Flesch Reading Ease formula and flags content scoring 70+ as accessible:

var result = ReadingLevel.Assess("Turn on your phone. Tap the Settings icon. Select Wi-Fi.");
Console.WriteLine($"Score: {result.FleschScore} ({result.Level})");
Console.WriteLine($"Senior-friendly: {result.SeniorFriendly}");
Console.WriteLine(result.Recommendation);
// Score: 92.3 (Easy)
// Senior-friendly: True
// Excellent for senior readers.

Locale Management

All five locales are available as a strongly-typed enum with metadata accessors:

foreach (var locale in Enum.GetValues<Locale>())
    Console.WriteLine($"{LocaleInfo.Code(locale)}: {LocaleInfo.NativeName(locale)}");
// en: English
// es: Espanol
// fr: Francais
// pt: Portugues
// it: Italiano

API Surface

Type Description
Locale Enum of 5 supported languages
LocaleInfo ISO codes, names, and native names for each locale
PathLocalizer Locale-prefixed URL routing and detection
HreflangBuilder Complete hreflang tag generation for SEO
ReadingLevel Flesch-based readability with senior-friendly scoring

License

MIT License. See LICENSE for details.

Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net8.0

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.1.0 87 3/29/2026