KanbanWeb is a collaborative, web-based kanban board application. It's mobile-friendly and built with Next.js, React, and Tailwind CSS on the frontend, and Prisma and PostgreSQL on the backend.
- User Authentication: Users can sign up and log in using their email and password, or their Google, GitHub, or Discord account.
- Organization Management: Users can create new organizations and join existing ones.
- Board Management: Organizations can create multiple boards. Each board has a name and a color.
- Collaboration: Boards can be shared among users within the same organization.
- Database: The application uses Prisma as a database client, with the database hosted on Neon.tech.
- Clone the repository.
- Run
npm install
to install the dependencies. - Set up the environment variables in a
.env
file based on the belowexample
file. - Run
npm run dev
to start the app in development mode.
git clone https://github.com/Runanka/kanbanweb.git
npm install
npm run dev
To set up the environment variables, create a .env.local
file in the root directory of the project and add the following variables:
# Database connection strings for Prisma
DATABASE_URL='<database_url>'
DIRECT_URL='<database_url>'
# Auth0 secret
AUTH_SECRET='<auth0_secret>'
# GitHub OAuth credentials
GITHUB_ID='<github_client_id>'
GITHUB_SECRET='<github_client_secret>'
# Google OAuth credentials
GOOGLE_ID='<google_client_id>'
GOOGLE_SECRET='<google_client_secret>'
# Discord OAuth credentials
DISCORD_ID='<discord_client_id>'
DISCORD_SECRET='<discord_client_secret>'
To set up the database with postgres, generate the db using prisma and then push it:
npx prisma generate
npx primsa db push
npx prisma studio
Below is the tabular representation of the schema: https://imgur.com/a/wzbiYKF
This project is licensed under the MIT License.