Top
Best
New

Posted by cpcloud 13 hours ago

Show HN: Micasa – track your house from the terminal(micasa.dev)
micasa is a terminal UI that helps you track home stuff, in a single SQLite file. No cloud, no account, no subscription. Backup with cp.

I built it because I was tired of losing track of everything in notes apps, and "I'll remember that"s. When do I need to clean the dishwasher filter? What's the best quote for a complete overhaul of the backyard. Oops, found some mold behind the trim, need to address that ASAP. That sort of stuff.

Another reason I made micasa was to build a (hopefully useful) low-stakes personal project where the code was written entirely by AI. I still review the code and click the merge button, but 99% of the programming was done with an agent.

Here are some things I think make it worth checking out:

- Vim-style modal UI. Nav mode to browse, edit mode to change. Multicolumn sort, fuzzy-jump to columns, pin-and-filter rows, hide columns you don't need, drill into related records (like quotes for a project). Much of the spirit of the design and some of the actual design choices is and are inspired by VisiData. You should check that out too. - Local LLM chat. Definitely a gimmick, but I am trying preempt "Yeah, but does it AI?"-style conversations. This is an optional feature and you can simply pretend it doesn't exist. All features work without it. - Single-file SQLite-based architecture. Document attachments (manuals, receipts, photos) are stored as BLOBs in the same SQLite database. One file is the whole app state. If you think this won't scale, you're right. It's pretty damn easy to work with though. - Pure Go, zero CGO. Built on Charmbracelet for the TUI and GORM + go-sqlite for the database. Charm makes pretty nice TUIs, and this was my first time using it.

Try it with sample data: go install github.com/cpcloud/micasa/cmd/micasa@latest && micasa --demo

If you're insane you can also run micasa --demo --years 1000 to generate 1000 years worth of demo data. Not sure what house would last that long, but hey, you do you.

474 points | 152 commentspage 5
dev1ycan 3 hours ago|
Missed chance to call it Mikasa
amelius 11 hours ago||
Why not keep everything in a simple text file?
cpcloud 11 hours ago|
I'm not sure if you're asking whether micasa should use a text file as its format, or if you're suggesting that a text file can be a substitute for micasa.
amelius 11 hours ago||
The latter.

I do things in my house too infrequently that I don't want to have to re-learn the UI of a tool again and again.

But maybe I'm not the target audience.

cpcloud 10 hours ago||
I often find myself wanting answers to questions that require linking data, and I also want to codify those links somehow, so a single-file, row-oriented database seemed like the appropriate way to get that.

You might actually be able to get away with less structure and just dumps thoughts and ideas, statuses, and documents into $AI and have it generate ad-hoc reports.

In which case, a text file might be the right interface.

Kind of a non-answer, I realize.

I suppose the answer is: because I had a relatively specific idea of what I wanted to build and I didn't consider not building it.

blaze33 10 hours ago||
I love the logo, go ahead and click it!
icar 10 hours ago||
Pretty cool

mise use -g github:cpcloud/micasa

and just start typing. I wish it had metric units and was translated, though!

cpcloud 9 hours ago|
Nice. I would definitely consider making it locale sensitive.
asgarovf 12 hours ago||
Looks really cool. Agree on comments related to TUI. Maybe a simple interface running locally would be better.
piskov 6 hours ago||
Why is the text in cells truncated?

Here it an important th… |

Why?

AstroBen 10 hours ago||
TUIs have gotten so good lately. I love the design on this
yomismoaqui 12 hours ago||
You can also run directly:

go run github.com/cpcloud/micasa/cmd/micasa@latest

reconnecting 11 hours ago||
Any ideas why Claude forces TUI application development?
cpcloud 11 hours ago||
Maybe it's that TUIs feel manageable with an agent. They can be well scoped without a ton of effort, which at least for me makes me a tiny bit more comfortable letting them write code.
reconnecting 11 hours ago||
It feels like something to do with front-end development limitations. I noticed a wave of TUI applications, all written by Claude from the initial commit.
big_toast 6 hours ago||
I started a golang TUI last summer with Codex Web/Cloud because it felt more like a closed loop. It was able to manage pretty well end to end.

Every additional complexity hop probably increases the attrition rate for successful development, so TUIs end up the most frequent bean to bar currently possible for hobbyists.

I really wanted an iOS app. I considered a web app, or a localhost app. Each additional hurdle (containers, packages, builds, testing, running, OSes, browser integration, computer use) feels like upping the required power of the models.

efficax 11 hours ago|||
It's pretty good at building TUIs. Although it's not bad at Swift/macOS either. But really I think the problem is that we don't have a great solution right now for cross platform native UIs that isn't a WebView (or entire Chrome browser), which doesn't feel very native. But every platform has a pretty good terminal now, even Windows.
reconnecting 10 hours ago||
Recently I asked Claude to build a communication tool and TUI was its first proposal. When I had a similar request with ChatGPT previously, it proposed node.js, I assume because there are more examples in its training data.

The pairing of Claude and TUI doesn't seem like a coincidence to me, perhaps there are fewer moving parts that are easy to coordinate?

max8539 10 hours ago||
It’s easy then run a web server for a web UI, but it still looks better than a regular CLI
basketbla 9 hours ago|
Is there even a Wichita, Arkansas?
cpcloud 4 hours ago|
Probably not. The demo data is fake. Mostly there to test drive it with ephemeral data.
More comments...