Implements Task 4 of the Utf8ToAsciiConverter refactor plan. Key features: - SIMD-optimized ASCII detection using SearchValues (AVX-512 capable) - Unicode normalization for accented characters (FormD decomposition) - FrozenDictionary for ligatures, Cyrillic, and special Latin mappings - Span-based API for zero-allocation scenarios - ArrayPool usage for temporary buffers - Comprehensive test coverage (21 unit tests, all passing) Implementation details: - Fast path for pure ASCII input (no conversion needed) - Dictionary lookup for special cases (ligatures, Cyrillic, etc.) - Unicode normalization fallback for accented characters - Control character stripping and whitespace normalization - Proper surrogate pair handling Test coverage: - Null/empty string handling - ASCII fast path verification - Accented character normalization (café → cafe) - Ligature expansion (Æ → AE, ß → ss, Œ → OE) - Cyrillic transliteration (Москва → Moskva, Щ → Shch) - Special Latin characters (Ł → L, Ø → O, Þ → TH) - Span API for zero-allocation scenarios - Mixed content handling Golden file tests are included for regression testing against the original implementation, though they require test data file configuration to run. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
Umbraco CMS
Umbraco is a free and open source .NET content management system. Our mission is to help you deliver delightful digital experiences by making Umbraco friendly, simpler and social.
Learn more at umbraco.com
Looking to install Umbraco?
You can get started using the following commands on Windows, Linux and MacOS (after installing the .NET Runtime and SDK):
dotnet new install Umbraco.Templates
dotnet new umbraco --name MyProject
cd MyProject
dotnet run
Documentation
Our comprehensive documentation takes you from the fundamentals on how to start with Umbraco to deploying it to production.
Some important documentation links to get you started:
- Installing Umbraco CMS
- Getting to know Umbraco
- Tutorials for creating a basic website and customizing the editing experience
Backoffice Preview
Want to see the latest backoffice UI in action? Check out our live preview:
This preview is automatically deployed from the main branch and showcases the latest backoffice features and improvements. It runs from mock data and persistent edits are not supported.
Get help
If you need a bit of feedback while building your Umbraco projects, we are chatty on Discord. Our Discord server serves as a social space for all Umbracians. If you have any questions or need some help with a problem, head over to our dedicated forum where the Umbraco Community will be happy to help.
Looking to contribute back to Umbraco?
You came to the right place! Our GitHub repository is available for all kinds of contributions:
Umbraco is contribution-focused and community-driven. If you want to contribute back to the Umbraco source code, please check out our guide to contributing.
