By Sahidur Pub Feb 20

Part 10: Getting It Live — Deploying AllBengal for Free

How to take AllBengal from your laptop to the real internet using free services.

Part 10: Getting It Live — Deploying AllBengal for Free

The Goal: Ship It!

You've built an amazing blog platform. Now you want to show it to the world. The good news: you can do it for free (or very cheap).

The Challenge: Three Things Need To Run

  1. Frontend: The pretty website people visit
  2. Backend: The API that stores and retrieves posts
  3. Database: The storage for posts, users, images

Normally, each of these costs money to run. But we can use free services:

The Free Stack

Part 1: The Database (Supabase - Free)

Supabase hosts PostgreSQL for free.

Setup:

  1. Go to supabase.com
  2. Click "Create new project"
  3. Choose "Free" tier
  4. Give it a name: "allbengal"
  5. Supabase gives you a database URL

Store this URL as an environment variable:

SUPABASE_DATABASE_URL=postgres://[user]:[password]@[host]:5432/[database]?sslmode=require

Part 2: The Backend (Render.com - Free)

Render hosts your Python FastAPI server for free.

Setup:

  1. Go to render.com
  2. Sign in with GitHub
  3. Click "New" → "Web Service"
  4. Connect your GitHub repo
  5. Configure:
    • Root Directory: backend
    • Build Command: pip install -r requirements.txt
    • Start Command: uvicorn main:app --host 0.0.0.0 --port $PORT
  6. Add environment variables (JWT_SECRET_KEY, SUPABASE_DATABASE_URL, etc.)

Result: Your backend runs at something like https://allbengal-backend.onrender.com

Part 3: The Frontend (Vercel - Free)

Vercel hosts your SvelteKit website for free.

Setup:

  1. Go to vercel.com
  2. Sign in with GitHub
  3. Click "New Project"
  4. Select your repo
  5. Configure:
    • Framework: SvelteKit
    • Root Directory: frontend
  6. Add environment variables (PUBLIC_API_BASE_URL pointing to Render backend)

Result: Your website is at something like https://allbengal.vercel.app

How They Connect

User opens browser
    ↓
Goes to https://allbengal.vercel.app (Vercel serves frontend)
    ↓
Browser shows you the pretty website
    ↓
You click "Write a post"
    ↓
Frontend sends request to https://allbengal-backend.onrender.com/api/...
    ↓
Backend talks to Supabase database
    ↓
Database returns your posts
    ↓
Backend sends JSON back to frontend
    ↓
Frontend shows your beautiful posts

Understanding The Free Tiers

Service Free Tier Limit Enough For
Supabase 500 MB database, unlimited API calls Thousands of blog posts
Render 0.5 GB RAM, auto-sleep after 15 min Small to medium traffic
Vercel 100 GB bandwidth/month Thousands of visitors

Common Issues

Problem: "Database connection failed"

Fix: Check SUPABASE_DATABASE_URL is correct in environment variables

Problem: "Frontend can't reach backend"

Fix: Check PUBLIC_API_BASE_URL points to correct Render domain

Problem: "Backend is slow (takes 30 seconds)"

Fix: Free Render tier sleeps after 15 min inactivity. Normal. Upgrade if needed.

Scaling as You Grow

Traffic Level Services to Upgrade Estimated Cost
1,000-10,000 visitors/month All free tiers OK $0 + domain ($10/year)
10,000-100,000 visitors/month Render upgrade ($7-19/month) $10-20/month
100,000+ visitors/month Render + Supabase upgrades $45+/month
The amazing part: You only pay when you need to. Start free. Upgrade when your blog gets popular.

Getting a Custom Domain

Your blog is at allbengal.vercel.app. Want allbengal.com?

  1. Buy domain from Namecheap, GoDaddy, or Google Domains (~$10/year)
  2. In Vercel, go to Settings → Domains
  3. Add your domain
  4. Follow Vercel's DNS instructions
  5. Done! Your blog is at your custom domain

The Bottom Line

Free deployment:

  • ✅ Database on Supabase (free)
  • ✅ Backend on Render (free)
  • ✅ Frontend on Vercel (free)
  • ✅ Custom domain ($10/year)
  • ✅ Total cost: $10/year or FREE forever

You can ship a production-quality blog for literally nothing. Incredible!

Start building! What will you write about first?

Analytics

Unique visitors

0

Visits

0

Reactions

0

💬 Comments (0)

No comments yet.

💌 Share Your Opinion With Us

📖 Read More Articles

Explore more articles and discover interesting stories from our blog.

View All Articles →