Skip to content

acmnuceskhi/worklog-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Worklog App

A hierarchical worklog tracking system for organizations, teams, and members with credits management, 5-state progress tracking, and rating system.

Features

  • 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.pk domains
  • Team Management: Invite members via email, set deadlines, review worklogs
  • Role-Based Access Control: Strict permissions based on organizational hierarchy

Tech Stack

  • 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

Getting Started

  1. Install dependencies:

    npm install
  2. Set up environment variables:

    cp .env.example .env
    # Configure DATABASE_URL, AUTH_SECRET (Google OAuth), and AUTH_TRUST_HOST=true (for local prod testing)
  3. Run database migrations & seed:

    npx prisma migrate dev
    npm run db:seed
  4. Start development server:

    npm run dev

Open http://localhost:3000 to view the application.

Documentation

Available Scripts

  • npm run dev - Start development server
  • npm run build - Build for production
  • npm run start - Start production server
  • npm run lint - Run ESLint
  • npm run prettier - Format code with Prettier
  • npm run db:seed - Seed database with initial data
  • npx prisma studio - Open Prisma Studio (database GUI)
  • npx prisma migrate dev - Run database migrations

About

Team-based worklog application built with Next.js, Prisma, and PostgreSQL. Features user authentication, worklog submissions, team management, and contribution ratings.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors