- The basics you love with Next.js, Tailwind CSS and shadcn/ui
- Quick Setup with Auth.js, drizzle and NeonDB
- Powerful Server-Actions with
- ActionButton
- CMD-K Menu
- Keyboard-Shortcuts
- streamToast()
- streamDialog()
- Configure the features you want in starter.config.ts
- Run
pnpm starter:initto setup the project - Create .env.local
- Generate Auth Secret
- run
npx auth secret - copy
AUTH_SECRETto .env.local
- run
- Connect DB
- Create Neon Database
DATABASE_URL: looks like postgresql://...
- Connect OAuth
- Create Discord Developer App
- Goto OAuth2
AUTH_DISCORD_ID: Copy Client IDAUTH_DISCORD_SECRET: Reset Secret- Add Redirects:
http://localhost:3000/api/auth/callback/discordhttps://your-app.com/api/auth/callback/discord
- Email
- Specify an SMTP server
EMAIL_FROM="moin@party-starter.de"SMTP_URL="smtp://[user]:[password]@sandbox.smtp.mailtrap.io:[port]"
pnpm db:pushto push schema to DB- Cron Jobs
- Add cron jobs to crons.ts
- Set
isActivetotrueto activate the cron job - Add
/api/cron/{cronName}to your app (see test cron) for an example - Run
pnpm installto sync the cron jobs to vercel.json - Add an Environment Variable
CRON_SECRETto your app- If you use Gitenvs and Vercel you need to set the
CRON_SECRETdirectly in Vercel not in Gitenvs
- If you use Gitenvs and Vercel you need to set the
pnpm install
pnpm dev- Next.js
- Tailwind CSS
- pnpm
- shadcn/ui
- @teampilot/sdk
- drizzle
- Auth.js
- @sodefa/next-server-context
- Vercel AI SDK
You can get the latest changes from the template by running:
git remote add template https://github.com/rechenberger/party-starter.git
git fetch --all
git merge template/main --allow-unrelated-historiesYou might have to resolve a few merge conflicts, but that's it!