An interactive, progressively enhanced project task manager with filtering using Next.js 15 with Tailwind CSS and Prisma. It's been purposely slowed down to showcase the handling of loading state.
See filter-provider branch for a context API version, which batches all filters into a single state, fixing the problem of them being discarded when toggling across multiple.
See nuqs branch for a version using nuqs to accomplish the same thing. It's probably better to use a library, right?
This is a Next.js project bootstrapped with create-next-app.
This project uses next/font to automatically optimize and load Inter, a custom Google Font.
First, install the dependencies:
npm installThen, run the development server:
npm run devOpen http://localhost:3000 with your browser to see the result.
You need decide between prisma local development with sqlite or a real database with for example sqlserver. Define it in the schema.prisma file.
Consider adding a .env file to the root of the project and using these inside schema.prisma with env("DATABASE_URL"), refer to .env.sample.
After switching, delete the prisma/migrations folder before running the migration command.
When using sqlserver, you need to migrate the database schema with:
npm run prisma.migrateWhen using sqlite, initialize with:
npm run prisma.pushSeed prisma/seed.ts for initial data:
npm run prisma.seedTo learn more about Next.js, take a look at the following resources:
You can check out the Next.js GitHub repository - your feedback and contributions are welcome!
The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.
Check out our Next.js deployment documentation for more details.