Documentation Getting started
Quick Start Guide
Get your project up and running in just 5 minutes with this quick start guide.
Prerequisites
Before you begin, make sure you have:
- Node.js >=20.18.1 installed (run
npm run fix-nodeto install) - NPM >=10.9.2 installed (run
npm run fix-nodeto install) - A code editor (VS Code recommended)
- Git installed on your system
- Any type of database(we recommend Supabase)
Installation
- Fork the repository
git clone https://github.com/davidparys/sprintkit cd sprintkit - Install dependencies
npm install - ** Run the onboarding script (automatic setup)**
The wizard will guide you through how to setup the different environment variables and services.npm run onboard - Set up environment variables (manual setup)
cp .env.example .env
Edit the.envfile with your configuration:DATABASE_URL="your-database-url" NEXTAUTH_SECRET="your-secret-key" - Push your database to your supabase instance
npm run db:generate && npm run db:push - Start the development server
npm run dev
If you encounter node version mismatch
If you encounter a node version mismatch, run npm run fix-node to install the correct version for this project.
A node version manager is required to install the correct version for this project, we recommend using nvm.
Your First Steps
- Visit your application Open http://localhost:3000 in your browser
- Create your first user
Navigate to
/auth/registerand create an account - Explore the dashboard After registration, you'll be redirected to the dashboard
Register and set yourself as an admin
- Register as a new user
Navigate to
/auth/registerand create an account If your .env variables are set correctly you will receive a confirmation email and you can login to your account. - Set yourself as an admin
- In a separate terminal, run
npm run db:studioto open the database studio. - Navigate to the
userstable and find your user. - Note down your users
uuid - Update the
rolecolumn toadminto set yourself as an admin (this is for better-auth to be able to ban & impersonate). - Then go to
rolestable and fetch theuuidfor the default roleAdministrator(it should exist as it is seeded by default). - Go to
user_rolestable and create a new row with the following values:Column Value user_idyour users uuidrole_idthe uuidof theAdministratorrole - Save the changes and you are now an admin!
Next Steps
- Read the API Documentation to understand the available endpoints
- Check out Webhooks for real-time notifications
- Customize your application by editing the components in
/components
Need Help?
- Check our GitHub Issues
- Read the full documentation