Why Is Supabase So Popular
So far you've learned to create routes with Express, store data in MySQL, and handle authentication with cookies. Building things yourself helps you understand how backends work.
But in reality, fewer teams than you'd expect build all of this from scratch. "Which database to use," "how to implement authentication," "where to store file uploads" โ deciding and building each one leaves too little time for the core features that matter.
BaaS (Backend as a Service) emerged to solve this problem, and its leading example is Supabase.
The Backend Bottleneck Is Real
Lab analogy โ imagine trying to develop a new assay where you have to synthesize reagents yourself, build the equipment yourself, and write the software yourself. It takes a year just to create one assay. Most researchers buy validated reagents, use commercial equipment, and work on top of existing analysis software.
Web development is the same. The basic backend components needed to build a service:
| Component | If You Build It Yourself | Reality |
|---|---|---|
| Authentication | Login, sessions, social login, password reset... | One mistake means a security incident |
| Database | Design, migration, backup, optimization... | Extremely hard to change later |
| File Storage | Upload, CDN, permission management... | More complex than expected |
| API | Routing, error handling, documentation... | Lots of repetitive work |
Missing even one of these means the service doesn't work. But building all of them yourself is like assembling a PCR machine from scratch every time you run an experiment. Possible, but you need a good reason.
BaaS: Using the Backend Like a Service
BaaS provides these basic components as pre-built services. Database, authentication, file storage, and APIs come bundled together, and developers just build their core service logic on top.
Connecting this to the DevBench learning path:
Build-it-yourself approach (what we learned):
Node.js โ Express โ MySQL โ Cookies/Sessions โ Assemble manually
BaaS approach:
Create Supabase account โ Create tables โ API auto-generated โ Set up auth
โ Focus on core features"Then why did we learn Express and MySQL?" โ this is the key point. To use BaaS properly, you need to understand what's happening inside. You can't design Supabase tables without knowing SQL, and you can't debug API calls without understanding HTTP. Only someone who learned the fundamentals can use BaaS as a tool โ someone who didn't gets dragged around by it.
Why Supabase Gets Chosen
There are several BaaS services out there, but Supabase is frequently chosen these days for three reasons.
1. Built on PostgreSQL
Supabase's database is PostgreSQL. The SQL syntax is over 90% identical to the MySQL we learned. SELECT, INSERT, JOIN โ all work the same.
PostgreSQL is one of the most widely used relational databases in the world. This means even if you move to a different system later, your SQL knowledge and data structures survive. It's like storing experiment data in standard formats (CSV, FASTA) โ any analysis tool can use it.
2. Open Source
Supabase is open source. The code is publicly available, and if you want, you can install and run it on your own server. This prevents "vendor lock-in" โ being trapped in a specific service with no way out.
3. Great Fit with the Web Dev Ecosystem
It connects naturally with frontend frameworks like React and Next.js. BioPlayground itself is built with the Next.js + Supabase combination.
Firebase vs Supabase vs Building It Yourself
| Firebase | Supabase | Build Yourself (Express+MySQL) | |
|---|---|---|---|
| DB Type | NoSQL (document-based) | PostgreSQL (relational) | Your choice |
| SQL Support | No | Yes | Yes |
| Auth | Built-in | Built-in | Build yourself |
| Startup Speed | Very fast | Fast | Slow |
| Control | Low (Google lock-in) | Medium (open source) | High |
| Learning Difficulty | Low | Medium | High |
| Best For | Mobile app MVP | Web service MVP | Custom requirements |
Firebase is Google's BaaS, especially strong for mobile apps. But being NoSQL-based, it's difficult for relational data (like sample-researcher relationships).
Supabase is SQL-based, so you can use the relational data model we learned as-is. "Firebase's convenience + PostgreSQL's reliability" is Supabase's positioning.
What BaaS Means for Researchers
When you want to build a simple sample management web app, experiment log dashboard, or internal team tool in the lab โ you don't need to build the backend from scratch.
With a BaaS like Supabase:
- Table design โ Click through the Supabase dashboard
- Authentication โ Email/Google login with just configuration
- API โ REST API auto-generated when you create tables
- Frontend โ Just build the UI with React
For this to work, you need to already know what SQL is, what APIs are, and how authentication works. What you learned in DevBench is exactly this foundation.
Conclusion: You Need the Fundamentals Before You Can See the Tools
BaaS doesn't "eliminate" the backend โ it replaces the repetitive parts with a service. Someone who's built a server with Express understands exactly what Supabase is handling for them. Someone who hasn't can't tell "what got easier."
Just as you need to understand principles to use lab equipment, you need to understand backend principles to use BaaS. That way, when problems arise, you can distinguish "is this my code's problem or a Supabase configuration issue?"
Everything you've learned so far wasn't wasted. In fact, this is where it truly starts to pay off.