D
Docs
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-node to install)
  • NPM >=10.9.2 installed (run npm run fix-node to install)
  • A code editor (VS Code recommended)
  • Git installed on your system
  • Any type of database(we recommend Supabase)

Installation

  1. Fork the repository
    git clone https://github.com/davidparys/sprintkit
    cd sprintkit
    
  2. Install dependencies
    npm install
    
  3. ** Run the onboarding script (automatic setup)**
    The wizard will guide you through how to setup the different environment variables and services.
    npm run onboard
    
  4. Set up environment variables (manual setup)
    cp .env.example .env
    

    Edit the .env file with your configuration:
    DATABASE_URL="your-database-url"
    NEXTAUTH_SECRET="your-secret-key"
    
  5. Push your database to your supabase instance
    npm run db:generate && npm run db:push
    
  6. 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

  1. Visit your application Open http://localhost:3000 in your browser
  2. Create your first user Navigate to /auth/register and create an account
  3. Explore the dashboard After registration, you'll be redirected to the dashboard

Register and set yourself as an admin

  1. Register as a new user Navigate to /auth/register and create an account If your .env variables are set correctly you will receive a confirmation email and you can login to your account.
  2. Set yourself as an admin
  • In a separate terminal, run npm run db:studio to open the database studio.
  • Navigate to the users table and find your user.
  • Note down your users uuid
  • Update the role column to admin to set yourself as an admin (this is for better-auth to be able to ban & impersonate).
  • Then go to roles table and fetch the uuid for the default role Administrator (it should exist as it is seeded by default).
  • Go to user_roles table and create a new row with the following values:
    ColumnValue
    user_idyour users uuid
    role_idthe uuid of the Administrator role
  • 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?