Show HN: Minimalytics – a standalone minimal analytics app built on SQLite
12 comments
·March 20, 2025HermanMartinus
Neat project! I’ve seen a few analytics tools starting to use SQLite over Clickhouse. It’s great for small to medium sized projects, and can potentially scale (but I haven’t tested it over 200k hits per month).
I rolled out a similar project a few months ago using Django + SQLite.
nafey
Wow. It looks like the two of us were responding to the same underlying needs. Great to see your project.
rudasn
I had a similar need, and after going through the docs for a few existing solutions (grafana, elastic, prometheus, etc) I decided to roll my own.
No db on the receiver and log-based storage on the senders (using standard log rotation to manage size). A systemd service to write to logs, another to read the last value and push to remote if it has changed. Bash all around.
Other than absolutely 0 maintenance required, and just a $5 droplet, the thing I like the most is the dashboard. It just looks like a spreadsheet. A row for each server, a column for each metric. Click on a cell to view charts for that metric. If metrics are failing health checks cell goes orange, or red if critical. Otherwise it's all gray.
So I can have the dashboard open on a screen and just glance at it and know if something is off. I haven't seen anyone else providing such a dashboard, maybe you can give it a go:)
nafey
This is an interesting use case. I can definitely see how a colored cell in a grid can serve as a visual indicator to monitor health of infrastructure. Thanks for sharing this.
bob1029
Congrats on the progress.
A lot of the SQLite code & modeling looks similar to how I'd approach this.
I was wondering about the need for React in this arrangement. I feel like you could do this with even fewer vendors and less memory (on the client).
nafey
Thank you! I already had experience working in React so I decided to use it for the first release.
I am thinking about switching to HTMX to further reduce size, simplify and improve performance.
8055lee
I read your documentation and this is one of the best projects I came across. No unnecessary complexities, gets the job done with simple REST calls. Hope there is a way to export analytics!
nafey
Thank you! Copying and processing the sqlite is always an option but I agree something like CSV exports are a good feature to add.
admiralrohan
You may give a more semantic name for the screenshot, instead of "First metric", "Second metric".
nafey
Thank you that's a good suggestion. I'll do that.
byyll
Isn't SQLite known for being bad for write-heavy use cases?
Imustaskforhelp
Created an issue https://github.com/nafey/minimalytics/issues/4
A little sad since I wanted to try it out
Hi everyone! I wanted to share my analytics app with you.
This project came from requirements to track certain very frequent events. I found that the cost to do it on a regular analytics product was much more than i was willing to pay. Secondly, I also wanted to use as few resources as possible. So I thought it may be a good idea to create something that may be useful for myself (and hopefully others).
I have been able to track a great number of events with this using ~20 MB of storage and memory which is incredible. I have been really impressed by golang as a language and as an ecosystem and would love to work more in this language going forward.
Some Highlights: 1. No dependencies 2. CLI based management 3. Web based UI (and the server to serve it) included in the program. 4. 20 MB install size. 5. 20 MB memory use while running. 6. Minimal storage requirements because it aggregates events.
This can be a great fit for anyone who wants to have a lightweight minimal analytics for internal events.
I am looking forward to your comments and feedback.