https://github.com/tomdoestech/indikit
A subscription SaaS starter
https://github.com/tomdoestech/indikit
drizzle-orm nextjs saas-boilerplate sqllite stripe-subscriptions
Last synced: about 2 months ago
JSON representation
A subscription SaaS starter
- Host: GitHub
- URL: https://github.com/tomdoestech/indikit
- Owner: TomDoesTech
- License: mit
- Created: 2024-09-16T22:33:39.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-09-18T09:08:00.000Z (8 months ago)
- Last Synced: 2025-01-28T20:13:46.832Z (4 months ago)
- Topics: drizzle-orm, nextjs, saas-boilerplate, sqllite, stripe-subscriptions
- Language: TypeScript
- Homepage: https://indikit.pages.dev/
- Size: 204 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
#
Indikit
Indikit is a starter kit for building a SaaS application with Next.js, TailwindCSS, Shadcn/UI, tRPC, Lucia Auth, Drizzle ORM, and Stripe. It is designed to be a starting point for building a modern, scalable, and secure SaaS application.
## Why?
I want a starter kit that is ready to deploy, has all the features that every app needs, and no more. I don't want to have to figure out what needs to be deleted before I can start building and I want the deployment solution to just work. IndiKit is ready to be cloned and deployed as-is.## Features
- [x] Deployable to CloudFlare pages
- [x] GitHub action for deployments
- [x] Subscription management
- [x] Email/password auth
- [x] PostHog analytics
- [ ] Google OAuth
- [ ] GitHub OAuth
- [ ] Magic link auth## Technologies
- [Lucia auth](https://lucia-auth.com/)
- [Drizzle ORM](https://orm.drizzle.team/)
- [tRPC](https://trpc.io/)
- [Next.js](https://nextjs.org/)
- [TailwindCSS](https://tailwindcss.com/)
- [Shadcn/UI](https://ui.shadcn.com/)
- [Stripe](https://stripe.com/)
- [Resend](https://resend.com/)
- [Turso](https://turso.com/)
- [PostHog](https://posthog.com/)## Support
If you find any issues or have any suggestions, jump on to [Discord](https://discord.gg/4ae2Esm6P7) or tag me on [X](https://x.com/tomdoes_tech).This project is completely free to use with no restrictions, or warranties. If you want to support me you can buy me a coffee [here](https://buymeacoffee.com/tomn).
## Setup
### Stripe
Create an account and a project in Stripe. Create a new product and price. Update the variables in the .env file. For links to the billing portal to work, you need to save the settings here: https://dashboard.stripe.com/test/settings/billing/portal### Turso
You can use any SQLlite database, but Turso is recommended because of it's simplicity and generous free tier. Sign up for an account, create a database and an auth token. Update the variables in the .env file.### Resend
Resend is used for sending emails. Sign up for an account and update the variables in the .env file.### CloudFlare Pages
You can easily deploy the application to CloudFlare Pages. Setup wrangler and run `pnpm deploy`. There is also a GitHub action that will deploy when you push to the main branch. You will need to configure the environment variables in the CloudFlare dashboard, set your account id and auth token in the GitHub action secrets.