DEV Community

Cover image for Why We Built NepStack Before Building Another App
Kshitij Chaudhary
Kshitij Chaudhary

Posted on

Why We Built NepStack Before Building Another App

A few weeks ago, our team had many product ideas.

A grocery app.
A property management app.
A workflow SaaS.

More ideas kept coming.

But we noticed one problem:

Every idea needed the same foundation again and again.

Authentication.
User management.
Dashboard layout.
Settings.
Roles and permissions.
Database patterns.
Deployment.
Documentation.
Team workflow.

So instead of starting another app immediately, we decided to build the foundation first.

That decision became NepStack.

The repeated problem

Most side projects start with excitement.

But after a few days, the same setup work appears again.

New app idea
      ↓
Build login again
      ↓
Build dashboard again
      ↓
Build settings again
      ↓
Set up deployment again
      ↓
Project slows down
Enter fullscreen mode Exit fullscreen mode

This is where many projects lose momentum.

Not because the idea is bad.

But because the foundation is not reusable.

What we decided to build

NepStack is our reusable SaaS starter kit.

The goal is simple:

Build the common SaaS foundation once.
Reuse it for future products.
Improve it over time.

For the first version, we are focusing on:

  • Authentication
  • User management
  • Role-based access
  • Dashboard shell
  • Settings module
  • API structure
  • Database patterns
  • GitHub workflow
  • Jira planning
  • Documentation
  • Deployment foundation

It is not supposed to be perfect from day one.

It is supposed to become useful through real usage.

Our Engineering OS

We are also trying to build a simple engineering workflow around it:

Idea
  ↓
Product note
  ↓
Jira ticket
  ↓
Git branch
  ↓
Pull request
  ↓
Code review
  ↓
Merge to dev
  ↓
Sprint demo
  ↓
Developer Notes
Enter fullscreen mode Exit fullscreen mode

This helps us connect planning, coding, documentation, and reflection.

Why this matters

I used to think progress meant writing code quickly.

Now I am learning that real progress also means:

  • making clear decisions
  • documenting why we chose something
  • creating reusable systems
  • reviewing work properly
  • reducing repeated setup
  • helping the team move in the same direction

Good software is not only about writing features.

It is also about building systems that make future work easier.

What I learned

Starting with NepStack taught me one important lesson:

Before building more apps, build the foundation that helps you build better apps.

This is still early.

We are learning as we go.

But I think this approach will help us become more disciplined developers and build products with better structure.

What’s next

In the next Developer Note, I’ll share how we are planning our first sprint and organizing work with GitHub, Jira, and documentation.

Thanks for reading.

— Xitol Mitra

Top comments (0)