HeadlinesBriefing favicon HeadlinesBriefing.com

Kizuna Shelf: Custom Media Tracker

Hacker News •
×

Everyone has a way of tracking what has left a mark on their life, whether it’s a book, a movie, a TV show, an anime, or a song. After cycling through countless tools, I wanted something I could truly control. I moved from Airtable to Notion to self‑hosted Noco DB, but the friction of constantly migrating databases pushed me toward a philosophy of files over apps. I settled on an Obsidian Vault where everything I care about is a Markdown file, complete with front matter and organized using Dataview and later Obsidian Bases.

Kizuna Shelf is not just another media tracker. It brings the dynamic flexibility of an Airtable‑like database, letting users define exactly what their data means. A single config.yaml file declares types, fields, and relationships, and out‑of‑the‑box presets cover Anime, TV & Drama, Movies, Games, Books, Music, Podcasts, and more. It connects to external providers such as TMDB, Apple Music, and Google Books.

Under the hood, the app is a cross‑platform experiment. A self‑hosted web app, a lightweight Tauri desktop client, and a native Swift UI iOS app share a single Rust core. The Rust core is exposed via an OpenAPI spec that auto‑generates TypeScript and Swift clients, ensuring consistency across clients. Unicode normalization issues were resolved, allowing safe use of Pokémon or ポケモン in filenames.

Kizuna Shelf is designed with mortality in mind. There are no servers, no proprietary formats—everything stays in plain Markdown and front matter. The iOS beta is on TestFlight, while the desktop and web versions will launch soon, with an Android version planned for later. My commitment is to maintain the app long into the future.