You can check out my project IndiePitcher for an example of a SAAS with a backend written in Swift, using this template.
This is an extension of Vapor's starter template to get the backend for your next SAAS off the ground. Or if you're jsut curious about server-side Swift and Vapor, and would like to see some real code.
It takes care of the tedious tasks for you, user management, sending emails, analytics, error logging...
Every SAAS needs to handle user sign up, and if your service takes off, you'll start being asked by customers how they can invite their colleagues. This ends up being a huge pain if everything is tied to a user profile instead of an organization unit. That's why this template includes a complete organization management with 3 levels of user permission. You can create a default org with a user profile during sign up that's hidden from the user, that's fine, and you are ready for to future.
.env
file and fill in following info to be able to run the app against a local database.
FIREBASE_PROJECT_ID=your-firebase-project-id
FIREBASE_PROJECT_ID
from .env.testing
to try things out, but please do create your own firebase project.docker-compose build
docker-compose up db
starts a local database to develop againstdocker-compose up db-test
starts a local database to run init tests against (this is a separate database so you don't wipe your data when running unit tests)docker-compose down
to shut the databases down, or just kill the docker appYou can deploy your backend anywhere that supports Docker. An obvious choice for many people would be AWS, I'm personally a fan of Digital Ocean's App Platform.
I'd also encourage you to join the vapor discord. Feel free to DM me there.