A SaaS (Software-as-a-Service) starter pack to convert ideas to value real quick. I'm aware that there are a plethora of similar starters, but I wanted to build one myself, for fun and educational purposes. Also, as the creator it will be easier and faster to implement it as a base for a future project.
Use Firebase to authenticate users. This saves a lot of time and the free tier is pretty lenient. If you want to utilize the Facebook login method, create credentials by following these instructions and add them to the environment variables.
VITE_FIREBASE_APIKEY
VITE_FIREBASE_AUTHDOMAIN
VITE_FIREBASE_PROJECTID
VITE_FIREBASE_STORAGEBUCKET
VITE_FIREBASE_MESSAGINGSENDERID
VITE_FIREBASE_APPID
VITE_FIREBASE_MEASUREMENTID
FACEBOOK_APP_ID
FACEBOOK_APP_SECRET
You don't need to set (the above) environment variables to just explore the UI. You can set DEVELOPMENT
to true
to use mock data.
cd frontend&&yarn install
yarn dev
Use Stripe to handle payments. Connected Firebase to Stripe with this plugin. The challenge is to keep Firebase (the authentication part) and Stripe in sync.
To make the deployment of this project as easy, stable and reproducable as possible, it leverages Terraform Cloud. This solution is free up to 5 users.
- Create an account if you don't have one already.
- Create a workspace.
- Choose the version control workflow
- Connect to Github (recommended)
- Choose your repository and make sure to install Terraform Cloud in your fork of this project
- Submit and create! 🚀
Terraform will create a Firebase project, which actually is a Google Cloud Project. Read more about the relationship between Firebase and Google Cloud.
To plan and apply Terraform locally (for debugging purposes), you'll need the following tools:
First, install Terraform. Second, install gcloud CLI.