This project is a collaborative todo app built with Next.js (app router), Auth.js, and ZenStack.
See the pages-route branch for an implementation using Next.js's old pages router.
In this fictitious app, users can be invited to workspaces where they can collaborate on todos. Public todo lists are visible to all members in the workspace.
See a live deployment at: https://zenstack-todo.vercel.app/.
- User signup/signin
- Creating workspaces and inviting members
- Data segregation and permission control
- 
Setup a new PostgreSQL database You can launch a PostgreSQL instance locally, or create one from a hoster like Supabase. Create a new database for this app, and set the connection string in .env file. 
- 
Install dependencies npm install 
- 
Configure environment variables Copy the .env.examplefile to.envand set the values for your environment. Github related variables can be left empty if you don't need GitHub OAuth login.
- 
Generate server and client-side code from model npm run generate 
- 
Synchronize database schema npm run db:push 
- 
Start dev server npm run dev 
For more information on using ZenStack, visit https://zenstack.dev.