Snowflake is a framework for building extensible frontends for modern emulators.
❄️Snowflake is where the core framework lives and undergoes development. 🪨Stone provides standardized, RFC compiliant identifiers to gaming platforms, game content formats, and controller layouts. 🎮snowflake-ingame provides Snowflake's in-game overlay and other facilities like process memory access to frontend plugins. 💾snowflake-projfs provides filesystem isolation and projection for emulators orchestrated by Snowflake. ⚛️hydrogen-paper is the default theme of Snowflake that implements an emulator frontend using the Snowflake framework. 🌈librashader provides a reusable, easily integratable implementation of the RetroArch shader pipeline for emulators.
These libraries have been created to aid with Snowflake's development and may be useful in your project as well.
- winfsp-rs provides safe Rust bindings to WinFSP.
- VCDiff is an SIMD-accelerated C# library for VCDIFF and xdelta compatible binary diffs with both encode and decode support.
- ImGuiBackends are C# backends for ImGui.NET using Silk.NET for low overhead.
- tsuku is a C# library for tagging files using extended attributes.
- bunkai is a C# library for parsing NoIntro, TOSEC, and GoodTools file names.
- chd-rs is a Rust implementation of the Compressed Hunks of Data file format.
- shiratsu-naming is a Rust library for zero-copy parsing of NoIntro, TOSEC, and GoodTools file names.
- listinfo-rs is a Rust library for zero-copy parsing of MAME ListInfo format DAT files.
- sabinokaku is a minimal bootloader and injector for hosting the .NET runtime in another process.