Skip to content

irenaProj/shiftwise

Repository files navigation

ShiftWise 🗓️

AI-powered shift scheduler — full-stack portfolio project

Live demo: https://shiftwise-app.vercel.app
API: https://shiftwise-0sin.onrender.com/api/health
Docs: https://irenaproj.github.io/shiftwise/

codecov


What this is

A workforce management app where managers can schedule employees, handle shift swaps, and use AI to resolve scheduling conflicts. Built to demonstrate full-stack engineering across database design, REST API, auth, real-time updates, and a polished React UI.

Current milestone: Managers can register, create a workspace, manage team members, define skills and shift templates, set per-slot demand forecasts, and record employee availability. Full stack wired end-to-end with auth, RBAC, Zod validation, and a comprehensive test suite (unit, integration, E2E).


Tech stack

Layer Technology
Frontend React 18, TypeScript, Vite, Tailwind CSS
State Zustand (client), TanStack Query (server)
Backend Node.js, Express, TypeScript
Database PostgreSQL via Prisma ORM
Auth JWT (access) + httpOnly cookie (refresh)
Dates date-fns v4, @date-fns/utc, @date-fns/tz
Testing Jest + Supertest (BE), Vitest + Playwright (FE)
Container Docker + nginx
Deployment Vercel (FE) + Render (BE) + Neon (DB)
CI/CD GitHub Actions

Quick start

git clone https://github.com/irenaProj/shiftwise.git
cd shiftwise
npm install
cd backend && cp .env.example .env  # fill in DATABASE_URL + JWT secrets
npm run db:migrate && npm run db:seed
cd .. && npm run dev

Documentation

Doc Description
Architecture System design, data model, monorepo structure
API Reference Endpoints, auth, error codes
Testing Test strategy, running tests, CI
Deployment Render, Vercel, Neon, GitHub Actions
Docker Local Docker setup, Codespaces notes
Dates Package @shiftwise/dates design and usage
GitHub Setup Secrets, Pages, branch protection, Codespaces
API Docs (TypeDoc) Generated docs from JSDoc comments

Roadmap

  • Milestone 1 — Project scaffold, schema, Express app
  • Milestone 2 — Auth: register, login, JWT, refresh token rotation
  • Milestone 3 — Employee management CRUD
  • Shared dates package — UTC adapter + display facade
  • Docker — multi-stage builds, docker-compose, nginx
  • CI/CD — GitHub Actions, Render deploy hooks, Vercel auto-deploy
  • Testing — Jest + Supertest backend tests, Vitest + Playwright E2E
  • Milestone 4 — Skills, shift templates, forecast & availability
  • Milestone 5 — Constraint-based schedule generator
  • Milestone 6 — AI integration (Claude API)
  • Milestone 7–8 — Calendar UI with drag-and-drop
  • Milestone 9 — Real-time updates (Socket.io)
  • Milestone 10 — Shift swap requests

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors