Hey Dev! As a Senior Frontend Developer, I spend most of my day inside the terminal workflow. I also happen to have a bunch of plants that I constantly forgot to water.
Mobile apps felt too detached from my daily desktop environment, so I wanted a lightweight, keyboard-driven status board right in my console.
Since my primary stack is React/Next.js, I decided to use this as an opportunity to build something in Go using the amazing Bubble Tea framework by Charm. To speed things up, I built it in close tandem with AI—designing the architecture and UI myself while using the LLM to write clean Go code efficiently.
Meet kiri (v0.1.0)!
Here is a glimpse of how the interface blends into my daily setup. I run a highly customized NixOS system with the niri tiling window manager and kitty terminal. The transparent terminal drawing allows the app to seamlessly melt into the desktop aesthetics, making it both a functional tool and a beautiful widget on the screen:
Key Features:
Fully Interactive TUI: Tabbed navigation, card grids with dynamic color coding, and a monthly calendar task view.
Smart Hydration Model: It factors in seasonal variations, ambient temperature, and live precipitation data via the Open-Meteo API for outdoor plants.
UNIX-way & Scriptable: Built-in --status, --summary, and --json flags so you can easily pipe raw plant data straight into custom status bars (Waybar, Polybar, i3blocks, tmux).
Lightweight: Powered by a fast local SQLite storage with zero external runtime dependencies.
The project is completely free and open-source. If you like terminal aesthetics or just want to keep your green friends alive, check it out!
👉 GitHub: github.com/freislot/kiri
I’d love to get your feedback on the TUI layout or the Go implementation. How do you manage your pet projects outside your main tech stack? Let me know in the comments!