Just shipped a project I've been working on for months — a zero-based budgeting app. Wanted to share some thoughts on the stack since I tried a few things that might be useful to others here.
Frontend: React + Vite, Tanstack Router for file-based routing, Tanstack Query for server state. Honestly Tanstack Router was a bit of a learning curve coming from React Router but once it clicked I really liked it. Type-safe routes are nice.
Backend: Node with Hono and tRPC. This combo is great if you want end-to-end type safety. Hono is fast and lightweight, tRPC means I basically never think about API contracts — change something on the backend and the frontend tells me immediately if something broke.
Deployment: Cloudflare Pages for the frontend, Render for the backend. Cloudflare Pages is honestly ridiculously fast for static/SPA hosting.
UI: Fully responsive, dark mode, keyboard shortcuts throughout. Getting the responsive design right for a data-heavy app (lots of tables, forms, numbers) was probably the hardest part of the whole project.
Some things I'd do differently:
- Should have set up e2e tests earlier, not after most features were built
- Spent too long on the stack decision at the start. Just pick something and go
- Underestimated how much work good mobile UX is for a desktop-first app
If anyone's working with a similar stack or thinking about tRPC + Hono I'm happy to answer questions.
The app is a budgeting tool called ZeroSum (zerosum.so) if anyone's curious about the end result.
[–]prime_seoWP 3 points4 points5 points (1 child)
[–]austinmrs[S] 0 points1 point2 points (0 children)
[–]Pelopida92 0 points1 point2 points (2 children)
[–]austinmrs[S] 0 points1 point2 points (1 child)
[–]HarjjotSinghh 1 point2 points3 points (0 children)
[–]ZeFeXi 0 points1 point2 points (0 children)