ENGINEERING 63 upvotes 2024

How we built JSR

63 pts
Hacker News Signal
2024 · Shared by @vladev
How we built JSR by @vladev

Retrospective Overview & Key Insights

Distilled reflections, business mechanics, and tactical takeaways:

In this technical retrospective (2024), @vladev shares practical architectural lessons learned from running, scaling, or migrating production software under lean constraints.

Core Principles for Independent Builders:
1
Defaulting to simpler architectures (such as monolithic frameworks, SQLite, or managed VPS) prevents early engineering bankruptcy.
2
Evaluating true compute and egress costs reveals that high cloud bills can often be slashed by 80%+ through judicious re-platforming.
3
Code you write at 2 AM as a solo engineer must be easy to debug six months later without complex microservice dependencies.
Community Debate Themes:

HN engineers debated the tradeoffs between cloud convenience and raw server economics, database indexing strategies, and resisting premature architectural complexity.

Founder's Discussion Replies (@vladev)

Direct clarifications and follow-up comments shared by the author during the live discussion:

OP @vladev Original Author

Interesting that they use Rust for most things, rather than Deno. I would've expected more dog-fooding on their part.

Community Discussions & Critical Reviews

Key perspectives, counter-arguments, and peer founder insights debated on Hacker News (40 total discussions):

LI @lionkor Peer Contributor
DA @danpalmer Peer Contributor
So how do we make serving modules reliable? We defer the entire problem to Google Cloud. The same infrastructure that serves google.com and YouTube is used to host modules on JSR. None of our custom code sits in this hot path

I work at Google and even I do this. Services like the storage backing GCS are incredibly reliable and have teams of SREs supporting them, so I offload as much as possible to services that have more dedicated support than I'm able to provide.

DE @Destiner Peer Contributor
We use the excellent sqlx Rust package to handle migrations.
The JSR API server is written in Rust, using the Hyper HTTP server. It communicates with the Postgres database via the sqlx Rust crate.

Looks like most of the backend is written in Rust. Must be a bummer working on a JS runtime, and not being able to test it out at such a scale.

TH @Thaxll Peer Contributor

Just a small point but google.com and YouTube do not run on the same infra as what you see on GCP, especially if you use GKE etc...

It's trivial to see because when GCP is down somehow Google and Gmail keep working.

HISTORICAL ERA Post-ZIRP & AI (2023–2026)
COMMUNITY SCORE 63 points
TOTAL DISCUSSIONS 40 comments
TOPICS & TECH STACK: