A hierarchical worklog tracking system for organizations, teams, and members with credits management, 5-state progress tracking, and rating system.
- Three-Tier Hierarchy: Organization Owner → Team Owner → Team Member
- Credits Management: Add/subtract/set credits for organizations and teams
- 5-State Progress Tracking: STARTED → HALF_DONE → COMPLETED → REVIEWED → GRADED
- Rating System: Organization owners rate worklogs 1-10 (hidden from team members/owners)
- File Attachments: Support for images and documents as worklog evidence
- OAuth Authentication: Google OAuth with Auth.js v5, restricted to
@nu.edu.pk/@isb.nu.edu.pkdomains - Team Management: Invite members via email, set deadlines, review worklogs
- Role-Based Access Control: Strict permissions based on organizational hierarchy
- Framework: Next.js 16 with App Router
- Database: Prisma 7 + PostgreSQL
- Styling: Tailwind CSS 4
- Authentication: Auth.js v5 (Google OAuth, restricted to university domains)
- Validation: Zod for API request validation
- Email: Resend SDK with React Email templates
-
Install dependencies:
npm install
-
Set up environment variables:
cp .env.example .env # Configure DATABASE_URL, AUTH_SECRET (Google OAuth), and AUTH_TRUST_HOST=true (for local prod testing) -
Run database migrations & seed:
npx prisma migrate dev npm run db:seed
-
Start development server:
npm run dev
Open http://localhost:3000 to view the application.
- api-documentation.md - Complete API reference
- onboarding.md - Repository navigation and file organization
- .github/copilot-instructions.md - AI coding guidelines
npm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run lint- Run ESLintnpm run prettier- Format code with Prettiernpm run db:seed- Seed database with initial datanpx prisma studio- Open Prisma Studio (database GUI)npx prisma migrate dev- Run database migrations