Deploying Django backend and React frontend completely free — production-ready options?

I have a Django backend (REST API) and a React frontend.

I want to deploy this project for a portfolio, but I would prefer to use only free hosting options (no paid subscriptions).

Requirements:

- Free hosting for Django backend

- Free database (PostgreSQL preferred)

- Free hosting for React frontend

- HTTPS enabled

Is it possible to deploy this setup completely free for small traffic?

Are there any limitations I should consider for production-like deployment?

I am mainly doing this for a portfolio project.

Sim, é possível. Porém, as limitações no plano gratuito normalmente incluem servidor que “dorme” após inatividade (cold start), recursos limitados de CPU/memória, limite de armazenamento no banco e ausência de alta escalabilidade. Para um projeto de portfólio e pouco tráfego, isso é totalmente suficiente; apenas não é ideal para uma aplicação comercial com muitos usuários.

For hosting Djanog backend i guess you have many, many options.

I personally use docker image hosted in Azure as App Service. It costs nothing. However I believe you can explore more hosting options here.

So first I would create docker image out of your Django app. For hosting docker images, docker hub is best place, as it's free. Azure container registry costs a lot, as for small project.

Frontend - here you have even more options. I have React frontend app hosted again as docker image on Azure. Same story as above.

However, here you also have other - Vercel or Cloudflare, to name a few.

Both, Vercel and Cloudflare are free.

Here you have list of "React friendly" options for hosting and deployments.

When it comes to database, I have only seen so far only one database hosting, that's free. It's Neon DB, which is Postgres database (you can manage it from web app in browser, or even connect to it with pgAdmin).

Thanks for the detailed suggestions! I’ll try creating a Docker image for the Django backend and explore Vercel/Cloudflare for the React frontend. Appreciate the tips about Neon DB too!

There is no free in the backend world even if they do it's very limited so always check for the resource usage time to time. My recommendation is to look for any PAAS as they provide a conveniant way to running the application for free with limited time.

Yes, totally doable for a portfolio project. Here's what I'd recommend:

Frontend (React):

  • Vercel or Netlify — both have generous free tiers, automatic HTTPS, CI/CD from GitHub, and are perfect for SPAs. Honestly can't go wrong with either.

Backend (Django):

  • Render — has a free tier for web services. The catch: free instances spin down after inactivity, so the first request after idle takes ~30-50s to cold start. Fine for a portfolio though.

  • Railway — gives you a $5 free trial credit. Not permanently free, but lasts a while for low-traffic portfolio projects.

Database (PostgreSQL):

  • Neon — generous free tier (0.5 GB storage), always-on, and purpose-built for serverless. This is probably your best bet right now.

  • Supabase — free tier with 500MB Postgres. Also solid.

  • Render offers a free Postgres too, but it expires after 90 days, so I'd avoid it for anything you want to keep around.

Limitations to be aware of:

  • Render free tier sleeps after 15 min of inactivity (slow cold starts)

  • Free DB tiers have storage/connection limits (fine for portfolio scale)

  • No persistent file storage on most free tiers — use something like Cloudinary free tier if you need media uploads

My go-to stack for this exact use case: Vercel (frontend) + Render (backend) + Neon (database)

All have HTTPS out of the box. More than enough for a portfolio project with light traffic. I've been running a similar setup for months with zero issues.


I can suggest PythonAnywhere to host your Django backend, there is a free limited plan : https://www.pythonanywhere.com/pricing/ (HTTPS is enabled by default)
You may have some limitation like the storage, and the fact that you need to keep the app active every three months, but for a portfolio project, it can be enough!

For the database, you can use sqlite if that's a simple db. But if you really want Postgres, I already used ElephantSQL. but I think there are better choices (take a look at this page : https://github.com/alexeyfv/awesome-free-postgres)

As for React, you can simply host it on GitHub and deploy with GH Pages. Here's a tutorial : https://www.geeksforgeeks.org/reactjs/deployment-of-react-application-using-github-pages/

Вернуться на верх