frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

Open in hackernews

Show HN: Overengineering Linksie – a link paywall generator

https://linksie.co
2•lekiwi•6h ago
Linksie is a way for you to put a paywall on any link.

I took a different approach for Linksie. I made a conscious choice to "over-engineer" it, not for complexity's sake, but to build a stable, scalable foundation and to aggressively upskill in areas where I was weak.

For me, over-engineering was a conscious choice to shift from the typical startup mindset of "ship features at all costs" to "with a little extra time, could I build something that scales more elegantly and remains stable for longer?" It was about thinking like a founding CTO: if I had to hire engineers tomorrow, what is the foundation I'd want in place for them?

It ended up as a monorepo containing containerized services and shared packages.

Application Services: Frontend: Next.js (Pages Router) Backend: HonoJS API Key Libraries: BetterAuth, Tailwind CSS, Headless UI, Tanstack Query/Form, Stripe

Worker Services: A dedicated container for node-pg-migrate database migrations. A job queue worker for asynchronous tasks (e.g., our referral system).

Shared Packages: Internal libraries for shared types and database clients (PostgreSQL, Redis) to ensure consistency between the API and workers. The entire stack is containerized with Docker and spins up locally with a single docker-compose up command. The codebase is currently around 30k lines of code.

The SDLC: Automation from Day One

I wanted a professional software development lifecycle from the start. CI/CD: On merge to main, a GitHub Actions pipeline runs tests, builds all container images, pushes them to Google Artifact Registry, and deploys everything to a dedicated staging environment. This includes running database migrations automatically. Production: After verification on staging, a manual approval in the GitHub UI triggers the exact same pipeline targeted at the production environment.

The Infrastructure: 90% Terraform

I chose GCP over AWS primarily for Cloud Run's developer experience and auto-scaling. The entire infrastructure is provisioned with Terraform.

Compute: Cloud Run for all services and jobs (with min/max instances set). Data: Cloud SQL (Postgres) and Memorystore (Redis). Networking: VPC, Cloud Load Balancer, Cloud DNS. Secrets & Artifacts: Secrets Manager and Artifact Registry. External: Cloudflare for public DNS and R2 for storage.

The "Why": Justifying the Upfront Investment

I know the common wisdom is to use Vercel, Supabase, etc., and get to market faster and cheaper. I chose this path for two main reasons:

1. I Despise Vendor Lock-in: PaaS providers like Vercel are fantastic, but they are for-profit entities that can and will change their pricing and priorities. We've all seen the horror stories of unexpected six-figure bills. We write modular code to avoid lock-in; I believe the same principle should apply to infrastructure. Owning the stack gives me control and predictable costs.

2. A Deliberate Opportunity for Growth: As a full-stack engineer, my DevOps and IaC knowledge was purely conceptual. This project forced me to learn Terraform, container networking, VPCs, and cloud architecture hands-on. The argument to "just hire someone later" is a weak one if you don't know how to evaluate their work. This experience filled a massive gap in my skillset. Even if the SaaS fails, the knowledge gained has been invaluable. I went from zero to proficient with Terraform in about a week, largely thanks to AI-assisted learning.

Retrospective & What I'd Do Differently

Would I do it the exact same way again? No. The current infrastructure has hefty costs for a pre-revenue project. My next iteration would be more pragmatic: Drop the managed Redis cache, use a cheaper DB option, eliminate the dedicated staging environment

Open to thoughts, suggestions, improvements!

The U.S. has struck Iran's nuclear sites in Fordow, Natanz, and Esfahan

https://twitter.com/RpsAgainstTrump/status/1936573323816714282
2•testrun•1m ago•1 comments

U.S. strikes Iran's nuclear facilities

https://www.axios.com/2025/06/21/us-strike-iran-nuclear-israel-trump
2•Liwink•1m ago•0 comments

Don't Read This If You Have a Security Clearance (2023)

https://www.theatlantic.com/ideas/archive/2023/05/leaked-documents-security-clearance-defense/674031/
2•greyface-•3m ago•0 comments

Understanding Firewalls in GCP

https://joshuajebaraj.com/posts/gcp-firewall/
1•mooreds•4m ago•0 comments

Why People Are Making SOA Fail (2008)

https://www.cio.com/article/276448/service-oriented-architecture-top-10-reasons-why-people-are-making-soa-fail.html
1•mooreds•9m ago•1 comments

Trump says US has bombed Fordo nuclear plant in attack on Iran

https://www.bbc.co.uk/news/live/ckg3rzj8emjt
23•mattcollins•13m ago•1 comments

Data Egress Costs Compared

https://getdeploying.com/reference/data-egress
1•handfuloflight•18m ago•0 comments

BYD Business Practices [video]

https://www.youtube.com/watch?v=kBbiCrsk7RM
1•testrun•23m ago•0 comments

Briefer

https://briefer.cloud/
1•handfuloflight•29m ago•0 comments

See Jane 128 by Arktronics run (ft. Magic Desk, 3-Plus-1 and the Thomson MO5)

http://oldvcr.blogspot.com/2025/06/see-jane-128-by-arktronics-run.html
3•classichasclass•30m ago•0 comments

To Bind and Loose a Reference

https://thephd.dev/to-bind-and-loose-a-reference-optional
1•Bogdanp•33m ago•0 comments

Horse Browser

https://gethorse.com
1•gaws•38m ago•0 comments

Transparent Ambition: on translucent user interfaces

https://take.surf/2025/06/19/transparent-ambition
1•goranmoomin•41m ago•0 comments

Durability of Cybertruck HFS

https://twitter.com/cybertruck/status/1936154980014342398
1•LorenDB•50m ago•0 comments

Tauri

https://v2.tauri.app/
1•handfuloflight•53m ago•0 comments

Publishing a Docker Container for MS Edit to the GitHub Container Registry

https://til.simonwillison.net/github/container-registry
4•chmaynard•53m ago•0 comments

Wikimedia DNS

https://meta.wikimedia.org/wiki/Wikimedia_DNS
2•LeoPanthera•55m ago•2 comments

Resurrecting the Historic Cactus Movie Theater in Hawthorne Nevada 35mm Cinema [video]

https://www.youtube.com/watch?v=SqwU8VXpjEQ
1•fortran77•56m ago•0 comments

The Latin Library

https://www.thelatinlibrary.com
1•Frummy•59m ago•1 comments

Vibe-coding Minecraft mods (and the lessons learned)

https://maxleiter.com/blog/vibecoding-minecraft-mods
1•MaxLeiter•1h ago•0 comments

Researchers show AI art protection tools still leave creators at risk

https://www.tu-darmstadt.de/universitaet/aktuelles_meldungen/einzelansicht_511168.en.jsp
2•ohjeez•1h ago•0 comments

Photo overload might be warping our ability to remember

https://www.nationalgeographic.com/health/article/digital-smartphone-cameras-memory
1•gnabgib•1h ago•0 comments

Disney Files Landmark Case Against AI Image Generator [video]

https://www.youtube.com/watch?v=zpcWv1lHU6I
3•rectang•1h ago•1 comments

Hybrid Cars, Once Derided and Dismissed, Have Become Popular

https://www.nytimes.com/2025/06/20/business/energy-environment/hybrid-cars-electric-vehicles.html
1•bookofjoe•1h ago•1 comments

The Limits of Founder Friendly

https://www.newcomer.co/p/the-limits-of-founder-friendly-what
2•sanj•1h ago•0 comments

HIV vaccine candidate could offer strong protection with just one dose

https://news.mit.edu/2025/supercharged-vaccine-could-offer-strong-protection-with-one-dose-0618
10•jnord•1h ago•1 comments

Non-uniform finite-element meshes defined by ray dynamics for Helmholtz problems

https://arxiv.org/abs/2506.15630
2•badmonster•1h ago•1 comments

Requiem for a Solar Plant

https://7goldfish.com/articles/Requiem_for_a_solar_plant.php
5•akkartik•1h ago•0 comments

An open standard for defining AI context and collaboration across platforms

https://github.com/davidkimai/context.json
1•davidkimai•1h ago•0 comments

She flew hazardous fighter planes for Britain during WW2. She just turned 106

https://www.theguardian.com/world/2025/jun/21/woman-fighter-pilot-second-world-war
2•tocs3•1h ago•2 comments