Kuroshiro
Overview
Kuroshiro is a BYOS (Bring Your Own Server) solution for the TRMNL ecosystem. It enables users to self-host and fully control their TRMNL-compatible devices using a unified stack powered by NestJS and Vue 3. Whether for learning, tinkering, or building a production-ready display management solution, Kuroshiro is designed to be modular, modern, and fun to use.
Project Details
- GitHub: kuroshiro
- Tech Used: NestJS, Vue 3, Vuetify, Docker, PostgreSQL, pnpm
- Status: Active
Features
- ๐ Plug-and-play self-hosting with Docker
- ๐งโโ๏ธ Auto-provisioning of devices
- ๐ Full device management (rename, reset, refresh rate)
- ๐ก Live insights (battery, WiFi, firmware, and previews)
- ๐ช Mirroring support for official TRMNL screens
- ๐ผ๏ธ Multiple screen types: uploaded, linked, or custom HTML
- ๐งช Virtual device mode for testing without hardware
- ๐ ๏ธ HTML screen preview & templating with TRMNL framework
- ๐ฆ Modular architecture: separate API/UI packages
Topics Covered
- Full-stack development with NestJS and Vue 3
- Dockerization and deployment strategies
- Real-time device management and communication
- Image processing with Imagemagick
- Custom templating and preview generation for ePaper displays
- Frontend state and device sync with WebSockets