Welcome to SAAS Starter Kit!
Saas Starter Kit is a modern SAAS boilerplate. Save weeks of development time having standard SAAS features implemented for you, and start building your core app right away.
π Tech Stack
Frontend:
React, Nextjs, Styled Components, AntD, Firebase Auth.
Server:
Nodejs, Express, Docker, Jest, Postgres or Mongodb.
*Pro version also includes Stripe, Nodemailer, AWS CDK and more.
βοΈ Installation
node version >= 14 recommended.
npm version >= 7 is recommended.
Using an older node version may lead to unexpected errors.
This Project Requires Firebase credentials and either Postgres or MongoDB credentials. Simply substitute the credentials into the appropriate env variables in both the client and server.
How to obtain the credentials from Firebase can be found in the Saas Starter Kit docs. Postgres and MongoDB credentials are user set.
Required Environment Variables
Client:
Variable | Description |
---|---|
NEXT_PUBLIC_SERVER_URL | URL of the nodejs Server. Will be localhost during dev. |
NEXT_PUBLIC_FIREBASE_API_KEY | The Firebase API key, found in the Firebase console |
NEXT_PUBLIC_FIREBASE_AUTH_DOMAIN | Firebase Auth Domain, found in the Firebase console |
Server:
Variable | Description |
---|---|
FIREBASE_DATABASE_URL | Found in Firebase Service Account Key JSON file. See docs for more info. |
FIREBASE_PROJECT_ID | Found in Firebase Service Account Key JSON file. See docs for more info. |
FIREBASE_CLIENT_EMAIL | Found in Firebase Service Account Key JSON file. See docs for more info. |
FIREBASE_PRIVATE_KEY | Found in Firebase Service Account Key JSON file. See docs for more info. |
AUTH_SECRET | User set, can be anything |
DB_PASSWORD | Postgres Password, user set |
DB_USER | Postgres username |
DB_HOST | Postgres host, localhost in dev |
DB_NAME | Name of Postgres database |
DB_PORT | Postgres Port, default is 5432 |
MONGO_URL | MongoDB URL is optional, if already using Postgres. Required if not. |
Once the Environment Variables are defined and node modules installed the boilerplate is ready to go.
β¨ Features
- β Admin Dashboard
- β Full Authentication, with Google Social Login and Password Reset
- β User Profile Management with Email and Username change
- β User Dashboard
- β Checkout Pages
- β Landing and Pricing Page template
- β Decoupled Nodejs server
- β Testing Setup with Cypress and Jest
- β CRUD operations
π Docs
The Documentation is available here: https://docs.saasstarterkit.com/docs/Intro/Welcome
If there are any questions or something is not covered in the docs, feel free to open a github issue on this repo.
π» Demo
The Demo can be found here: https://demo.saasstarterkit.com/app/1/dashboard
Certain Features have to be disabled or cant be included in the demo.
π Saas Starterkit Pro
The Pro Version is a more advanced SAAS boilerplate with many more features compared to the open source version.
Additional Features:
- β Stripe subscription payments
- β Roles and permissions
- β Multi user apps and multi tenancy
- β Machine learning and AI
- β AWS infrastructure as code
- β Fully Featured Blog and Docs
- β Event Based Google Analytics
Yes, We know having the Pro version behind a paywall is a little annoying, but the sales from the Pro version is what allows us to provide the free open source projects, written tutorials and video tutorials. Please do consider upgrading if you like the open source work and want to support the project.
The Pro Version can be found here:
https://www.saasstarterkit.com
π€ Contributing
Pull requests are welcome.
Also If you like this project please βοΈ the repo to show your support.