Getting Started with the Azure SaaS Dev Kit
Welcome to the Azure SaaS Dev Kit!
Software as a Service (SaaS) doesn’t need to be complex and time consuming.
The Azure SaaS Development Kit is a deployable reference implementation of pre-built modules designed to help you launch your SaaS offering faster:
- It includes commonly needed SaaS components that implement features such as identity, onboarding, and tenant management.
- It is 100% open-source code, allowing you to build by example or modify/extend to be purpose-built for your particular scenario.
- The code is fully documented, making it clear how the code functions, and why key design decisions were made.
How you use the dev kit is up to you, here are some ideas to get you started:
- Modernizing an existing application to support full multitenancy as part of a shift to a SaaS based business model.
- Developing a greenfield SaaS offering for the first time.
- Migrating a SaaS offering from another cloud to Azure.
This is not a one-size-fits-all solution. Use as little or as much as you like. It is designed to be both a modular deployable reference implementation and also a reference architecture. You are free to use and change the code contained within this project in any way you’d like (following the terms of the license)):
- Deploy the entire solution to Azure using the Bicep templates we provide, make changes to fit your exact use case, and start building your SaaS application from there.
- Deploy one or more of our modules and hook it into your existing SaaS application.
- Reference our code & architecture and build something entirely custom using the best practices we outlined.
- Or, simply gain inspiration from this codebase.
This kit uses a microservices architecture so that each module is self-contained and can be used independently.
- A web app where your customers view plans and onboard to your solution.
- Provides you with tenant administration capabilities such as modify, remove, etc.
Admin Service - An extensible API to programatically manage CRUD operations on tenants.
SaaS.Application - A sample end user application that you can extend or replace with your own code.
The Azure SaaS Dev Kit uses a fully multitenant deployment. Multitenancy is a complex topic with many facets, and there is no one size fits all approach.
Read more about multitenant architectures considerations and approaches at https://aka.ms/multitenancy.
Ready to get started?
Check out the quick start page.
Additional Recommended Resources
- Best practices for architecting multi-tenant solutions
- ISV Considerations for Azure landing zones
- Azure Well-Architected Framework
- WingTips Tickets SaaS Application - Provides details into tradeoffs with various tenancy models within the database layer.