https://github.com/TommyLec/SelfKit
A self hosted oriented boilerplate for developers who want full control: cut your costs, secure your data, and focus on what matters.
https://github.com/TommyLec/SelfKit
drizzle-orm paddle plunk postgresql saas saas-boilerplate shadcn svelte sveltekit tailwindcss umami
Last synced: 4 months ago
JSON representation
A self hosted oriented boilerplate for developers who want full control: cut your costs, secure your data, and focus on what matters.
- Host: GitHub
- URL: https://github.com/TommyLec/SelfKit
- Owner: TommyLec
- License: mit
- Created: 2025-01-16T15:29:31.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2025-02-10T10:05:18.000Z (11 months ago)
- Last Synced: 2025-05-17T04:08:37.349Z (8 months ago)
- Topics: drizzle-orm, paddle, plunk, postgresql, saas, saas-boilerplate, shadcn, svelte, sveltekit, tailwindcss, umami
- Language: TypeScript
- Homepage: https://selfkit.dev/
- Size: 2.86 MB
- Stars: 82
- Watchers: 7
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
- awesome-shadcnui - Github
README

# SelfKit
SelfKit is a **SaaS boilerplate** designed for developers who want to quickly build and deploy web applications. He is **self-hosting** oriented, meaning it is built with open-source tools and provides a convenient way to be hosted with Coolify or any Docker-compatible infrastructure.
## Links
- [Official website](https://selfkit.dev/)
- [Documentation](https://docs.selfkit.dev/docs)
- [Live demo](https://demo.selfkit.dev/)
## π Main Features
- **Authentication**:
- Email/Password
- Google login
- 2FA
- Rate limiting
- Password checking
- **Payment**:
- Checkout page
- Pricing component
- Product and subscriptions auto update (webhook)
- **SEO**: Meta tags, Open graph, JSON-LD
- **Blog**: with markdown and RSS flux
- **Analytics**
- **Emails**
- **Internationalization**
- **Database auto migration**
- **Coolify deployment script**
- **Default terms & privacy pages**
- **UI components**:
- Features grid
- Call to action
- Problem
## π οΈ Technical stack
- **Framework**: SvelteKit
- **Database**: PostgreSQL with Drizzle ORM
- **Authentication**: Lucia (learning resource)
- **Payments**: Paddle
- **Analytics Tracking**: Umami
- **Emails**: Plunk
- **UI & Design**: Tailwind + Shadcn Svelte
- **Internationalization**: Paraglide
- **Forms**: Superform + Zod
## π¦ Installation
### 1. Clone the repository
```bash
git clone https://github.com/your-repo/selfkit.git
cd selfkit
```
### 2. Configure environment variables
Copy the `.env.example` file to `.env` and fill in the required information.
```bash
cp .env.example .env
```
### 3. Install dependencies
```bash
pnpm install
```
### 4. Run the application locally
```bash
docker-compose -f docker-compose.dev.yaml up
pnpm run dev
```
## β
Testing & CI/CD
SelfKit includes Playwright integration for end-to-end testing.
### Run tests locally
```bash
pnpm run test
```
### CI/CD with GitHub Actions
Tests are automatically executed on every **push** or **pull request** via GitHub Actions.
## π Deployment
SelfKit is designed for easy deployment on **Coolify** or any Docker-compatible infrastructure.
```bash
docker-compose up -d
```
Check our ```DEPLOY.md``` file or the [documentation](https://docs.selfkit.dev/docs/coolify) for more details about the installation with Coolify.
## FAQ
#### What is SelfKit exactly?
SelfKit is a boilerplate for launching SaaS applications quickly and easily. Itβs designed for developers who want to self-host their projects using open-source tools, minimizing recurring costs and external dependencies.
#### What kind of applications can I build with SelfKit?
You can build any type of SaaS platform, from subscription-based services to one-time purchase products. Itβs particularly well-suited for apps requiring user authentication, payment processing, and analytics.
#### Why self-hosting?
Self-hosting gives you full control over your application and reduces reliance on third-party services, which can introduce hidden costs and data security concerns.
#### Which version of Svelte does SelfKit use?
Svelte 5!
## π License
SelfKit is open-source and licensed under MIT.
---
π‘ **Need help?** Open an issue on GitHub!
