Recently, I've been very interested in WebAssembly (WASM) and bringing native apps and libraries to the web, thus pushing the limits of what's possible on the web today.
This project in particular is about FreeType, a popular library for rendering fonts that supports many different font formats. It's used in a lot of applications such as PDF viewers, web browsers, word processors, games, and design tools.
Making FreeType available as a WASM module makes it possible to run this logic in the user's browser, instead of requiring installation of a native application or a server-side component. This is especially useful for web applications that need to render text in a custom way, such as design tools or games.
The source code for FreeType is written in C, so I used Emscripten to compile it to WASM. This FreeType WASM port provides the same features and functionality as the original C library.
Using the WASM-compiled FreeType, I built an online tool for parsing font files which lets you visually inspect glyphs with character mappings.