Budget-Friendly Tech Stack
PremiumDomain, deployment, database, storage, email-full stack for ~$10/year
Budget-Friendly Tech Stack
Product's done; next step is making it accessible to the world.
This requires infrastructure: domain so people can find you, deployment platform to run the site, database to store data, file storage for images and videos, email service for notifications.
Good news: in 2025, almost all of these are free or extremely low cost. No servers to buy, no ops knowledge needed-just know which tools to use and how to configure them.
This chapter gives you a complete money-saving plan covering the most common indie developer scenarios.
Domain: Cloudflare Registrar
For domains, I recommend Cloudflare Registrar. Simple reason: they sell at cost-no markup, no hidden fees. A .com domain is about $8-10/year, renewals same price-no first-year-cheap-second-year-expensive games like some registrars.
Cloudflare also has an advantage: built-in DNS service, one of the world's fastest. Buy the domain, use their DNS directly-no extra config.
Namecheap is also good, friendlier interface. GoDaddy is well-known but expensive-not recommended.
Domain selection principles: short, product-related, .com preferred. If you really can't get .com, for AI products consider .ai suffix-but note .ai domains are pricier, tens of dollars per year.
Purchase process is simple: register at Cloudflare's site, search your desired domain, add to cart, pay. Entire process under ten minutes.
Deployment: Vercel
For deployment platforms, I use Vercel. Its free tier is plenty for personal products.
Vercel's advantage: nearly zero config. Push code to GitHub, click Import in Vercel, select repo, click Deploy, wait a few minutes and you're live. It automatically handles HTTPS certificates, global CDN, auto-builds.
For Next.js projects, Vercel is the best choice-Vercel is the Next.js company, best compatibility. React, Vue, Nuxt, Astro all supported too.
For environment variables like database connection strings or API keys, set them in Vercel's Settings -> Environment Variables.
Free tier limits: 100GB bandwidth/month, 1000 Serverless function invocations/month, 6000 build minutes. Plenty for personal and early-stage projects.
One note: if your project traffic grows, Vercel's pricing gets pricey. Then consider migrating to Cloudflare Pages or self-hosting. But early stage, Vercel is the most hassle-free choice.
Alternative: Cloudflare Pages is also great-completely free with no bandwidth limits. If your project is static or can use Cloudflare Workers, it's cheaper.
Database: Neon or Supabase
Two free database options: Neon and Supabase. Both PostgreSQL-choose based on your needs.
Neon's positioning: Serverless PostgreSQL. Free tier gives you 500MB storage, 100 compute hours/month. Fast startup, pay-per-use, can create multiple projects. Good for projects with infrequent access but need persistent data.
Supabase is more like an open-source Firebase alternative. It's not just database-includes auth system, file storage, realtime subscriptions, edge functions. Free tier gives you 500MB database storage, 1GB file storage, 50,000 monthly active users. Good for projects needing one-stop backend services.
My recommendation: if you only need database, choose Neon-lighter. If you need auth, storage, etc., choose Supabase-one-stop solution.
Both free tiers have a limitation: inactive projects get paused. Neon pauses after 7 days inactive; Supabase similar. But data isn't lost after pause-auto-resumes on access.
File Storage: Cloudflare R2
If your product needs to store user-uploaded images, videos, files-recommend Cloudflare R2.
R2 is Cloudflare's object storage service, S3 API compatible. Biggest selling point: no egress fees. Traditional cloud storage (AWS S3, Google Cloud Storage) has expensive egress-users download files, you pay. R2 doesn't charge for that.
Free tier: 10GB storage/month, 1 million Class A operations (writes)/month, 10 million Class B operations (reads)/month. Plenty for personal products.
If using Supabase, its built-in Storage works too-no separate R2 config needed. But if you have lots of files or high-frequency access, R2 is more cost-effective.
Email Service: SMTP Relay
For sending product emails, start with a standard SMTP relay or transactional email provider. For a custom-domain mailbox, an MXRoute-style SMTP account is usually enough. If volume grows, consider SES, Postmark, or Mailgun.
A domain mailbox has a practical advantage in the early stage: the same address can receive replies and send transactional messages, so support is easier to manage.
Most frameworks can send through SMTP with Nodemailer, smtplib, or similar libraries. You can still use React Email or another template system, then deliver the rendered message through SMTP.
AWS SES is cheaper at scale, but the setup is more complex-domain verification, SPF/DKIM, and deliverability warm-up all matter. For early products, SMTP with a custom mailbox is simpler.
Authentication Service
How to handle user registration and login->
If using Supabase, it has built-in Auth service. Supports email-password login, OAuth (Google, GitHub, etc.), Magic Link. Free tier supports 50,000 monthly active users-enough for most products.
If not using Supabase, consider Clerk or Auth.js (formerly NextAuth). Clerk's free tier supports 10,000 monthly active users with richer features and pre-built UI components. Auth.js is open source, completely free, but you handle user data storage yourself.
Another option: Better Auth-new open-source auth library from 2024, very modern design, simple integration. Worth watching.
Payment Service
For accepting payments, Stripe is first choice. It charges 2.9% + 30 cents on small transactions, no monthly fee.
Stripe's dev experience is excellent. Clear docs, polished SDK, convenient test mode. Integrating Stripe Checkout-a few lines of code for a complete payment flow.
LemonSqueezy is another option. It has built-in VAT handling (MoR, Merchant of Record). If you're selling digital products and need to handle global tax issues, LemonSqueezy is more convenient-it handles taxes, you just collect money.
Creem is a new 2024 payment service designed for indie devs. Like LemonSqueezy, it's MoR mode handling global taxes. Advantage: lower rates (5% vs LemonSqueezy's 5%+), better Asian market support. If your users are global, worth considering.
If your target users are mainly in China, consider WeChat Pay, Alipay. But integration cost is higher than Stripe-requires business qualification.
Analytics Service
Want to know how many people use your product->
Free option: Microsoft Clarity is completely free-user behavior replay, heatmaps, session recordings. Very helpful for understanding how users use your product.
Umami is an open-source website analytics tool-self-deploy to Vercel + Supabase, completely free. It's a privacy-friendly Google Analytics alternative with clean interface and clear data.
Plausible is also a privacy-friendly analytics tool-both paid and self-hosted options. Self-hosted is free but needs a server.
Google Analytics (GA4) is free but complex UI with privacy concerns. If users are in Europe, GA4 may have GDPR compliance issues.
Connecting Your Domain
Domain bought, website deployed-last step is connecting them.
In Vercel dashboard, enter your project, find Settings -> Domains, add your domain. Vercel tells you what DNS records to configure.
Then go to Cloudflare dashboard, add a CNAME record. Name: @ (represents root domain), content: cname.vercel-dns.com. If you want www addresses to work too, add another identical record with name: www.
Wait a few minutes for DNS to propagate; you can access the site with your own domain. Vercel auto-configures HTTPS certificates.
My Recommended Combo
If I had to give one most hassle-free tech stack combination:
Domain: Cloudflare. Deploy: Vercel. Database: Supabase (if needing auth, storage, etc.) or Neon (if only needing database). File storage: Cloudflare R2 or Supabase Storage. Email: SMTP. Analytics: self-deployed Umami or Microsoft Clarity.
This combo's annual cost: domain about $10, everything else free.
Of course, "free" has quota limits. If your product takes off and users grow, you'll need to upgrade to paid tiers. But that's a happy problem-product has users, spending money is worth it.
In early stages-validating ideas-don't spend too much on infrastructure. Use free options to launch fast, validate fast, iterate fast. Consider upgrading when the product has revenue.
What if Not Using Next.js->
This chapter's examples focus on Next.js + Vercel, but if using other tech stacks, most services are still applicable.
Domain, database, storage, email, payments, analytics-these services are tech-stack agnostic. Cloudflare, Neon, Supabase, R2, SMTP email, Stripe-whether you use React, Vue, Svelte, or pure HTML, they all work.
Deployment platform choice varies. Vue/Nuxt projects can use Vercel (well supported) or Netlify. Python/Django and Ruby/Rails backends-Vercel isn't suitable; consider Railway or Render, both have free tiers. Go, Rust projects can use Fly.io-usage-based billing, basically free for light use.
Pure static sites (HTML/CSS/JS, Hugo, Astro, etc.) recommend Cloudflare Pages-completely free, no bandwidth limits, global CDN.
If using a niche framework, search on Reddit or X-usually someone shares money-saving approaches. Core principle is the same: find services with free tiers, get running first.
Next chapter covers SEO-letting Google find your product. Deploying online is just step one; being searchable is where it really begins.
AI Practice Knowledge Base