🇺🇸 English | 🇨🇳 中文
A simplified, high-performance Next.js 16 Boilerplate.
Built by an Indie Hacker, for Indie Hackers.
Report Bug
·
Request Feature
·
Explore the Website
Hi, I'm @xijaja.
I am not a Computer Science major. I am a Product Manager with 8 years of experience. In May of this year, I left my job to teach myself coding and become a full-time Indie Hacker.
My Journey: At first, I fell in love with SvelteKit for its simplicity. But as I tried to build complex SaaS apps, I hit a wall: the ecosystem just wasn't big enough yet. So, I bit the bullet and moved to Next.js.
Why Open Source? Originally, I planned to sell this as a paid boilerplate. But I realized two things:
- I don't want to spend my days doing customer support. I want to build products.
- I believe the best way to learn is to share. I learned the hard way so you don't have to.
I've stripped away the overly complex logic and kept the core: A beautiful UI, rock-solid Authentication, and a modern Database setup. It is a clean canvas. You can focus on your unique value proposition without wrestling with configuration.
- Framework: Next.js 16 (App Router) & React 19.
- Styling: Tailwind CSS v4 - The latest engine.
- Authentication: Better Auth - Secure, type-safe, and modern.
- Database: Drizzle ORM & Postgres (Neon ready).
- AI Integration: Pre-configured Vercel AI SDK & Replicate.
- AI UI Components: Ready-to-use interfaces for Chat, Image Generation, and Video Generation.
- Multi-Tenancy: Built-in dashboard with Organization/Team switching support.
- Internationalization: Complete i18n support and SEO optimization out of the box.
- Developer Experience: Bilingual code comments (English & Chinese) to help you understand the logic.
- Deployment: Dockerfile included for easy containerized hosting.
- Payments: Stripe subscription ready.
- Emails: Resend & React Email.
- Content: MDX via Content Collections.
| Category | Technology |
|---|---|
| Core | Next.js 16, React 19, TypeScript |
| Database | PostgreSQL, Drizzle ORM |
| Auth | Better Auth |
| Payments | Stripe |
| UI/Styling | Tailwind v4, Radix UI, Framer Motion |
| AI | Vercel AI SDK, Replicate |
| Resend, React Email | |
| Forms | React Hook Form, Zod |
- Node.js 20+ or Bun (Recommended)
- A PostgreSQL database (e.g., local or Neon)
- Stripe, Resend, and Better Auth API keys
-
Clone the repository:
git clone [https://github.com/xijaja/saaskey.git](https://github.com/xijaja/saaskey.git) cd saaskey -
Install dependencies:
npm install # or bun install -
Set up environment variables: Rename
.env.exampleto.env.localand fill in your secrets.cp .env.example .env.local
-
Database Setup: Push the schema to your database.
npm run db:push
-
Run the development server:
npm run dev
Open http://localhost:3000 with your browser to see the result.
"If SaaSKey has saved you time or helped you in any way, please give it a Star 🌟. Your support keeps me motivated!
You can also support the project by sharing it on social media or showcasing the products you've built with it. Additionally, reporting issues or sharing ideas from your real-world experience will help make this project even better."
I am actively building this. Here is my current plan:
- Authentication: Complete Better Auth integration (Email/Pass + Social)
- Database: Drizzle ORM + Postgres setup with Schema
- Payments: Stripe Subscription (Checkout, Webhooks & Customer Portal)
- AI UI: Ready-to-use UI for Streaming Chat, Image Generation, and Video Generation
- Dashboard: Multi-organization/Team switching support
- Internationalization: Full i18n & SEO support
- Deployment: Dockerfile included for containerized hosting
- Content: MDX Blog system via Content Collections
- Emails: Transactional emails with Resend & React Email
- Workflow: Integration with Inngest.
- Payments: Support for Creem.
- Payments: Support for Polar.sh.
- Affiliate: Integration with Affonso.io.
- Affiliate: Integration with Promotekit.com.
- Email Marketing: Integration with Useplunk.com.
- Email Marketing: Integration with Loops.so.
- Analytics: Privacy-friendly analytics with Rybbit.com.
- Legal: GDPR Cookie Consent Popup.
- Templates: User Agreement & Cookie Policy templates.
- Documentation: Add Fumadocs.
- CMS: Add Stash integration.
- Deployment: Cloudflare Workers support.
- Themes: 2nd Landing Page Theme.
I share my journey of building SaaS products and learning to code on X (Twitter).
If you have any questions or just want to say hi, feel free to DM me!
Distributed under the MIT License. See LICENSE for more information.

