5
2 Comments

C#/.NET Core template for a SaaS API

What‘s up fellow hackers,

TLDR; My idea is to (publicly) build a C#/.NET Core template project that serves as a foundation for SaaS projects. Including authentication, API routes + versioning, Database access, … Think: A project to kickstart your next project - careful defaults but with absolute freedom to adjust parts to your own needs.

Long version:
I‘ve been a software engineer for more than 10 years now - mostly focused on web apps, APIs, SaaS, cloud technologies. Since I‘m kicking off a new SaaS project using C#/.NET Core as backend and API, I‘m thinking about putting together a boilerplate/template project, including everything I know about scalable, well-written and robust software.

People could get access to the source code and kickstart their next SaaS project using this template. I‘m convinced that tens of hours could be saved by just using the right project structure and best practices and be able to focus on the actual problem at hand.

Some things it would include:

  • Dependency injection and services
  • API controllers with best practices regarding REST
  • API versioning
  • (JWT) authentication and authorization
  • Database access / entities
  • Migrations
  • Docker configuration
  • GitHub workflow that creates docker image
  • Unit tests

Is that something people are interested in? I‘m seeing posts from people struggling with getting the project structure right and starting with the right foot from time to time.

Let me know what you guys think!

posted to Icon for group Ideas and Validation
Ideas and Validation
on January 30, 2022
  1. 1

    If it scratches your own itch and others could benefit from it then it can be worth looking into. How far would it go or would it be a starting point?

    https://abp.io does similar for the .NET side so there is a demand out there as they do a commercial version on top.

    1. 2

      Wow this looks nice, didn't even know this existed! Although ABP looks like a full-fledged framework providing all sorts of stuff for building web apps.

      I'm leaning more towards a simple, minimalistic project structure with best practices around controllers, authentication, DB access and stuff, but leaving enough room to bring in your own ideas.

      Something like Max Stoiber's Bedrock for C#: https://bedrock.mxstbr.com/

Trending on Indie Hackers
Your AI Product Is Not A Real Business User Avatar 119 comments Stop Building Features: Why 80% of Your Roadmap is a Waste of Time User Avatar 84 comments I built an enterprise AI chatbot platform solo — 6 microservices, 7 channels, and Claude Code as my co-developer User Avatar 44 comments The Clarity Trap: Why “Pretty” Pages Kill Profits (And What To Do Instead) User Avatar 37 comments How to build a quick and dirty prototype to validate your idea User Avatar 24 comments I got let go, spent 18 months building a productivity app, and now I'm taking it to Kickstarter User Avatar 23 comments