This is the fullstack Next.js project for BeatPiper.
This project makes use of the following technologies
- Continuous Integration with GitHub Actions
- Spotify Authentication with NextAuth
- Database ORM with Prisma
- Components and styling with Mantine
- Code formatting with Prettier
- Linting with ESLint
- Static Types with TypeScript
- End-to-end typesafe API with tRPC
- Schema validation with Zod
The stack is heavily inspired by t3.
-
Install dependencies
yarn
-
Start PostgreSQL database in Docker
docker-compose up -d
-
Start dev server
yarn dev
Open http://localhost:3000 with your browser to see the result.
This project uses TypeScript. It's recommended to get TypeScript set up for your editor to get a really great in-editor experience with type checking and auto-complete. To run type checking across the whole project, run the script typecheck
.
This project uses ESLint for linting. It's configured in .eslintrc.json
.
We use Prettier for auto-formatting in this project. It's recommended to install an editor plugin (like the VSCode Prettier plugin) to get auto-formatting on save. There's also a format
script you can run to format all files in the project.