A modern SaaS starter template built with Next.js 13+, Appwrite, Stripe, and more. Get your SaaS project up and running in minutes!
- 🔐 Authentication with Appwrite
- 💳 Payment processing with Stripe
- 📧 Email system with Mailgun
- 🌓 Dark mode support
- 📱 Responsive design
- 🎨 Modern UI with Tailwind CSS
Before you begin, ensure you have:
- Node.js 16+ installed
- An Appwrite account
- A Stripe account
- A Mailgun account
git clone https://github.com/yourusername/launch-base.git
cd launch-base
npm install
- Create an Appwrite account at cloud.appwrite.io
- Create a new project in Appwrite
- Go to your project settings and note down:
- Project ID
- API Endpoint
- API Key (create a new API key with all permissions)
Run the Appwrite setup script to create all necessary collections:
node appwrite-scripts/setup.js
When prompted, enter your:
- Project ID
- API Key
This will create:
- Users collection
- Subscriptions collection
- Payments collection
- Copy the example environment file:
cp .env.example .env.local
- Fill in your environment variables:
# Appwrite
NEXT_PUBLIC_APPWRITE_ENDPOINT=your_appwrite_endpoint
NEXT_PUBLIC_APPWRITE_PROJECT_ID=your_project_id
NEXT_PUBLIC_APPWRITE_DATABASE_ID=your_database_id
# Stripe
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=your_stripe_publishable_key
STRIPE_SECRET_KEY=your_stripe_secret_key
# Mailgun
MAILGUN_API_KEY=your_mailgun_key
MAILGUN_DOMAIN=your_domain
# App URL
NEXT_PUBLIC_APP_URL=http://localhost:3000
npm run dev
Visit http://localhost:3000 to see your app!
launch-base/
├── app/ # Next.js 13+ app directory
│ ├── page.js # Home page
│ ├── login/ # Authentication pages
│ ├── dashboard/ # User dashboard
│ └── account/ # User account management
├── components/ # Reusable components
├── lib/ # Utility functions and configs
└── appwrite-scripts/ # Database setup scripts
-
Home Page (
/
):- Landing page with feature showcase
- Links to pricing and authentication
-
Authentication:
- Sign up (
/signup
) - Login (
/login
) - Password reset (
/forgot-password
)
- Sign up (
-
User Flow:
- After signup/login, users are redirected to dashboard
- Users can view/update their profile in account page
- Subscribe to plans through the pricing page
-
Subscription Flow:
- Choose a plan from pricing page
- Complete payment through Stripe
- Access premium features based on subscription
- Create new pages in the
app
directory - Add new components in
components
directory - Update navigation in
components/Header.js
- Uses Tailwind CSS for styling
- Customize theme in
tailwind.config.js
- Global styles in
app/globals.css
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Next.js team for the amazing framework
- Appwrite for the backend solution
- Stripe for payment processing
- All other open-source contributors
- Check out the Discussions tab
- Open an Issue
- Read the Wiki
Built with ❤️ using Next.js and Appwrite