FastSaas: Everything you need to take-off soon as possible.
Ultimate SaaS Kickstarter: A lean boilerplate for rapidly
launching your product. Built with modern technologies, Perfect
for developers who want to focus on their unique product features
rather than reinventing the wheel.
Table of Contents
- Supabase Configuration
- Google Single Sign-On (SSO) Integration
- Email Configuration with Nodemailer
- Stripe Integration
- Upstash Setup (Optional)
- Additional Considerations
Supabase Configuration
- Access the Supabase dashboard
- Retrieve the following connection strings:
POSTGRES_PRISMA_URL
POSTGRES_URL_NON_POOLING
- Add these URLs to your project's
.env
file
- Install the Supabase client library in your project
Google Single Sign-On (SSO) Integration
- Set up a Google Cloud Platform project
- Configure OAuth 2.0 credentials
- Obtain the Client ID and Client Secret
- Implement Google SSO in your application (e.g., using NextAuth.js)
- Add the following environment variables:
GOOGLE_CLIENT_ID
GOOGLE_CLIENT_SECRET
Email Configuration with Nodemailer
- Enable 2-Step Verification for your Google account
- Generate an App Password specifically for your application
- Configure Nodemailer to use this App Password for sending emails
- Add the following to your
.env
file:
Stripe Integration
- Sign up for a Stripe account
- Retrieve your Stripe secret key from the dashboard
- Create two subscription products in the Stripe Product Catalog:
- Free tier
- Paid tier (configure as needed)
- Obtain the price IDs for both subscription tiers
- Set up a webhook in your Stripe dashboard with the following events:
checkout.session.completed
invoice.payment.succeeded
- Implement Stripe integration in your application using the Stripe SDK
- Add the following to your
.env
file:
STRIPE_SECRET_KEY
STRIPE_WEBHOOK_SECRET
Upstash Setup (Optional)
For rate limiting:
- Sign up for an Upstash account
- Create a new Redis database
- Obtain the connection details (endpoint and token)
- Implement rate limiting in your application using Upstash Redis
- Add the following to your
.env
file:
UPSTASH_REDIS_URL
UPSTASH_REDIS_TOKEN
Additional Considerations
- Ensure all sensitive information (API keys, secrets) is stored securely in environment variables
- Implement proper error handling and logging throughout your application
- Consider setting up monitoring and analytics to track usage and performance
- Regularly update dependencies and security patches
- Implement proper authentication and authorization mechanisms
- Set up a CI/CD pipeline for streamlined deployment
Contributing
We welcome contributions to this open-source boilerplate. Please read our CONTRIBUTING.md file for details on how to submit pull requests.
License
This project is licensed under the MIT License - see the LICENSE.md file for details.
This is a Next.js project bootstrapped with create-next-app
.
Getting Started
First, run the development server:
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open http://localhost:3000 with your browser to see the result.
You can start editing the page by modifying app/page.tsx
. The page auto-updates as you edit the file.
This project uses next/font
to automatically optimize and load Inter, a custom Google Font.
Learn More
To learn more about Next.js, take a look at the following resources:
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
Deploy on Vercel
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.