A full-stack project management tool designed for seamless task management and team collaboration. Built using Next.js, Prisma ORM, PostgreSQL, Tailwind CSS, Zod, and Next-Auth, this tool allows managers to create projects, assign tasks, and track progress. Employees can manage tasks through a user-friendly dashboard, while role-based access ensures security and proper workflow.
https://workstream.rakhshan.online/
- Role-based access for managers and employees.
- Real-time task assignment and progress tracking.
- Dashboard for managing projects with pending, ongoing, and completed task sections.
- Project timeline and task deadline management.
- Secure authentication and session management using NextAuth.
- Language: TypeScript
- Frontend: Next.js, Tailwind CSS, and Shadcn
- Backend: Next.js, Zod, and Server actions
- Database: PostgreSQL, Prisma ORM
- Authentication: NextAuth
- Monorepo Management: TurboRepo
- Containerization & Deployment: Docker, AWS (EC2)
First, clone this repository to your local machine:
git clone https://github.com/your-username/your-repo-name.git
Change into the project directory:
cd your-repo-name
Install the required dependencies using npm:
pnpm install
pnpm dlx migrate dev
pnpm run db:generate
Ensure you set up the following environment variables in a .env file at packages/db and at apps/web of the project:
- DATABASE_URL: URL for your PostgreSQL database
- NEXTAUTH_SECRET: Secret key for NextAuth authentication
You can start the app by running:
pnpm run start-user-app
This project is deployed on AWS using Docker and Github workflows to automate the CI and CD workflow.