It’s been a few weeks since I last worked on sprout. Honestly, SAT prep has been taking up the majority of my time. I spent around an hour of unrecorded time just reading through my code and a bunch of notes I left for myself. After getting myself caught up, I shifted my sight to my goals.
I immediately realized I hated the bulky, standard application window. It felt too clunky for a focus app. I decided to completely pivot the design: instead of a full app, I wanted a tiny, transparent, aesthetic widget that just floats quietly on the desktop. It’s been a while since I last programmed a widget, so it took me a while to catch up. The second I tried to make the window transparent, my entire CSS layout completely collapsed. The background started tiling infinitely, my assets disappeared, and the drag-handle completely broke. The Tauri v2 migration also messed me up. Tauri completely overhauled how they handle security permissions, system tray icons, and background shell processes. I spent way too long staring at my screen just trying to figure out why my Python AI backend wouldn’t launch. But after rewriting the main.js file from scratch and working on the Rust config files, I made some progress.
Here is what is actually working in V1.0.0:
- UI: It’s a tiny, frosted-glass widget with a shimmering pastel title bar.
- AI core: The Python computer vision script now boots up invisibly in the background the second you open the app. No more messing with terminals.
- System Tray: It minimizes straight to the Windows tray, keeping your taskbar clean.
- My favorite part, the pomodoro timer: A fully functional, click-to-start Pomodoro timer that hooks directly into native Windows notifications to tell you to take a break.
I packaged the whole thing into a distributable .msi installer and added it onto GitHub Releases. It is completely open-source and officially out.
It was a bit annoying, but seeing my little plant sitting on my desktop, actually tracking my posture without crashing, makes it totally worth it.
Comments 0
No comments yet. Be the first!
Sign in to join the conversation.