My First SaaS Building Experience 🚀
I started building my first serious SaaS project with:
Next.js + Clerk + Neon + Drizzle ORM
I had used Next.js before, but never at this level. This project quickly became less about building an app and more about learning how real applications actually work.
1. It started with a tutorial
Initially, I was following a tutorial to understand the basics of building a SaaS.
The stack was new to me:
- Next.js
- Clerk
- Neon
- Drizzle ORM
- RBAC
- Database + authentication
At first, things felt pretty straightforward.
Clerk authentication was especially easy because of its built-in flow and good documentation.
But that didn't last long. 😅
2. Then I reached the database
This was where things became interesting.
I'm not very good with SQL, and Neon + Drizzle was completely new to me.
The tutorial was using Prisma, but I ran into problems setting up an account with Prisma.
I had two choices:
Stop and follow the exact tutorial setup
or
figure out Drizzle myself.
I chose the second one.
3. The turning point 🔥
I started reading the Drizzle documentation.
Then more documentation.
Then debugging.
Then changing things.
Then breaking them again. 😅
One of my biggest struggles was understanding how to properly define the database schema and relationships.
But eventually, I got the Drizzle setup working and started connecting it with Neon.
That was probably the biggest turning point of this project.
I wasn't just copying the tutorial anymore.
I was figuring out how to replace one technology with another and make it work myself.
4. The smallest moment felt huge 📩
One of my favorite moments so far was receiving the email verification code from my own project.
It sounds small.
But seeing an authentication flow that I had configured and debugged actually work felt really satisfying.
That's when it felt like:
“Okay... I'm actually building a SaaS.”
5. What I'm actually learning
The biggest lesson hasn't been learning another library.
It's learning how to learn a technology when someone isn't showing me every step.
I'm learning to:
- Read documentation properly
- Debug unfamiliar errors
- Understand schemas and relationships
- Work with ORMs
- Connect authentication with databases
- Understand RBAC
- Make decisions when the tutorial doesn't match my setup
And probably the most important one:
Don't depend completely on the tutorial.
A tutorial can show you one way.
Your job as a developer is to understand why it works and how to build your own way.
6. Where I am now 🚧
The project is still being built.
Done:
- ✅ Next.js setup
- ✅ Clerk authentication
- ✅ Email verification
- ✅ Basic auth flow
- ✅ Neon + Drizzle setup
Still working on:
- 🔨 Webhooks
- 🔨 Database CRUD
- 🔨 RBAC implementation
- 🔨 Completing the SaaS
7. The real takeaway
I'm still learning and the project is nowhere near finished.
But this experience has already changed how I approach learning.
Earlier, I wanted to finish tutorials.
Now I want to reach the point where the tutorial ends and think:
“Cool. Now let me figure out the rest.” 🚀
Top comments (0)