Open Source
Projects
Things I build and maintain. Some are spun off from research; others scratch personal itches.
Spotlight
- renpak Rust · MPL-2.0github.com/NihilDigit/renpak ↗
AVIF compression for Ren'Py visual novel archives — typically 4–5× smaller on image data, without forking the engine. Hooks Ren'Py's standard
file_open_callback, so the game decodes AVIF transparently at runtime. Tested on Eternum (Caribdis): 11.3 → 7.2 GiB on disk, 4.73× on the image bytes themselves. - FocusWell Kotlin / TypeScriptgithub.com/NihilDigit/focuswell ↗
Android-first time accounting app for uneven energy and focus. It turns daytime focus into a storable leisure reserve, so high-energy days can support low-energy days without streak pressure or progress anxiety.
- pikpak-kotlin Kotlin · MITgithub.com/NihilDigit/pikpak-kotlin ↗
A Kotlin Multiplatform SDK for PikPak cloud storage. Handles session persistence, captcha auth, rate limiting, and resumable uploads. Extracted from the Animeko PikPak work.
- coding-agents-setup PowerShell / Shellgithub.com/NihilDigit/coding-agents-setup ↗
A modern local toolchain setup for coding agents, packaged as Windows and Linux setup scripts. It can install and configure development tools, shell helpers, skills layout, and Codex/Claude rule files generated from shared fragments.
Other
- shulker TUI for a friend-group Minecraft (Paper/Purpur) server: whitelist, ops, world switching, config editing, backups, chunk pre-gen, and SakuraFrp tunnel control. Rust
- writing-style Agent skill for prose style checks: register matching, no translation smell, no marketing voice, and no AI-essay phrasing in Chinese and English. Markdown
- csync Chrome extension that syncs cookies and localStorage from normal windows to incognito for configured sites. JavaScript
- tokmato Personal token-economy pomodoro app. Focus and health behaviors earn auditable tokens; tokens recharge a shared time pool used for entertainment, snacks, and wishlist redemption. Includes multi-device sync, Web Push, and an Android relay for high-priority FCM reminders. TypeScript / Kotlin
- DeepSeek-Structured-Output-for-LangChain Small compatibility patch for using structured output with DeepSeek models through LangChain's ChatOpenAI interface. Python