DEV Community

Cover image for I Built a Desktop App That Ends My “Open 7 Terminals and Pray” Routine
TROJAN
TROJAN

Posted on

I Built a Desktop App That Ends My “Open 7 Terminals and Pray” Routine

Every developer has that one painfully stupid ritual.

Mine was opening multiple terminal tabs every morning, navigating into random folders, running npm run dev, forgetting which server crashed, then pretending I had my life together.

So I built Chronicle.

A desktop app that launches my entire development workspace with one click and lets me inspect Git history like a detective investigating my own questionable commits.


What Chronicle Actually Does

1. One-click workspace launcher

Hit one button and Chronicle spins up all your dev servers
simultaneously.

No more:

  • opening 5 terminals
  • copy-pasting commands
  • forgetting which port exploded
  • spiritually bonding with terminal chaos

It streams live logs into a clean dashboard so you can actually see what’s happening in real time.


2. Git history explorer with AI summaries

This part became way cooler than I expected.

Chronicle visualizes commit history, lets you inspect diffs, and even
uses AI to summarize what changed.

Because sometimes you look at your own commit from 3 days ago and think:

“Who the fuck wrote this?”

Spoiler: it was you. Sleep deprived. Dangerous.


The Stack

Layer Tech
Desktop Shell Tauri v2
Frontend React 19 + Vite + TypeScript
Backend Rust + Tokio
Styling Tailwind CSS v4
Animations Framer Motion
AI Gemini

The Rust backend handles async process spawning while the React frontend
listens to live events from Tauri.

And honestly?

Tauri feels criminally underrated.

Electron said:

“What if your app consumed the RAM of a small nation?”

Tauri said:

“Relax. We brought Rust.”


My Favorite Part

Streaming terminal output from Rust into React in real time felt weirdly
magical.

Rust handles the processes asynchronously, pipes stdout/stderr line-by-line, then emits events directly to the frontend.

Tiny code. Massive payoff.

The result feels like a dev cockpit instead of a pile of terminal tabs
held together by caffeine and denial.


What I Learned Building It

  • Tauri is insanely good for desktop tooling
  • Rust async is terrifying for 20 minutes and then suddenly beautiful
  • Real-time event systems make apps feel alive
  • Developer tooling is fun because you get to solve your own annoying problems first

Also:

designing a “simple dashboard” somehow consumed half my lifespan.

Frontend developers are basically pixel war veterans.


Why I Built It

I wanted a tool that made development feel less fragmented.

Something fast.
Something clean.
Something that didn’t require ritual sacrifice every morning just to boot
a workspace.

Chronicle started as:

“I’m tired of opening terminals.”

And somehow evolved into:

“Let’s build an AI-powered developer control center.”

Classic scope creep. Absolutely deserved.


Try It

GitHub Repo

https://github.com/TROJANmocX/Chronicle

If you build dev tools, love Rust, or just enjoy automating away tiny
daily annoyances, you’ll probably have fun with this one.

And if your current workflow involves 14 terminal tabs and raw emotional
damage...

yeah.

This app was made for you.

Top comments (2)

Collapse
 
daveman1010221 profile image
David S.

Very cool. I have my challenges with Tauri but haven't found a lot of good alternatives to it, either. I usually use a full rust stack though, so the web frameworks are not as polished as what you're using.

On question for you, have you tried Zed? Writing zed plugins is straight forward. Possibly a different way to think about the problem you're solving.

Collapse
 
trojanmocx profile image
TROJAN

Yeah, I’ve played with Zed a bit. The plugin system is surprisingly clean compared to some editor ecosystems that feel like you need to perform ritual sacrifices just to register a command.

I actually like the idea though. Tauri sometimes feels like “look how tiny this binary is” while you’re fighting three layers of build tooling in a trench coat. Zed plugins could sidestep a lot of that if the core workflow lives inside the editor already.

My only hesitation is scope creep. I start with “small plugin” and suddenly I’m emotionally supporting a distributed systems problem at 2am. Rust has a way of making you feel both powerful and personally attacked.