Skip to content

Sensible-Analytics/crewcircle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

26 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

CrewCircle

Australian Workforce Management Solution
Roster scheduling, time tracking, and team management for shift-based businesses

Website β€’ Live Demo β€’ Documentation

Deploy by Vercel License Node.js


What is CrewCircle?

CrewCircle is a workforce management platform built for Australian small and medium businesses. It helps you:

  • πŸ“… Create rosters in minutes with drag-and-drop scheduling
  • ⏰ Track time with GPS-verified clock in/out
  • πŸ‘₯ Manage teams with role-based access control
  • πŸ“Š Generate reports for payroll and compliance
  • πŸ”” Notify employees instantly when rosters change

Data hosted in Sydney (AWS ap-southeast-2) for AU compliance and fast performance.


Architecture

crewcircle/
β”œβ”€β”€ apps/
β”‚   β”œβ”€β”€ web/                    # Next.js 16 web application
β”‚   β”‚   └── src/
β”‚   β”‚       β”œβ”€β”€ app/           # Next.js App Router pages
β”‚   β”‚       β”œβ”€β”€ components/    # Shared React components
β”‚   β”‚       β”œβ”€β”€ features/      # Feature modules (roster, timesheets, team)
β”‚   β”‚       β”œβ”€β”€ lib/           # Libraries
β”‚   β”‚       β”‚   β”œβ”€β”€ clerk/     # Clerk authentication + user service
β”‚   β”‚       β”‚   └── neon/      # NeonDB PostgreSQL client
β”‚   β”‚       └── store/        # Zustand state management
β”‚   └── mobile/                # React Native mobile app (Expo)
β”œβ”€β”€ packages/
β”‚   └── validators/            # Zod validation schemas
└── docs/                       # Documentation and wiki

Tech Stack

Component Technology
Frontend (Web) Next.js 16, React 19, TypeScript
Mobile App React Native, Expo
Database NeonDB (PostgreSQL)
Authentication Clerk
Styling Tailwind CSS v4
Payments Stripe
Deployment Vercel (Web), EAS (Mobile)

Quick Start

Prerequisites

  • Node.js 20+
  • Yarn package manager
  • NeonDB account (PostgreSQL)
  • Clerk account (authentication)
  • Stripe account (payments)

Setup

# Install dependencies
yarn install

# Copy environment variables
cp .env.example .env.local

# Edit .env.local with your credentials

Environment Variables

# NeonDB (PostgreSQL)
DATABASE_URL=postgresql://user:password@host/database?sslmode=require

# Clerk Authentication
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=pk_test_xxx
CLERK_SECRET_KEY=sk_test_xxx
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
NEXT_PUBLIC_CLERK_AFTER_SIGN_IN_URL=/roster
NEXT_PUBLIC_CLERK_AFTER_SIGN_UP_URL=/roster

# Stripe Payments
STRIPE_SECRET_KEY=sk_test_xxx
STRIPE_WEBHOOK_SECRET=whsec_xxx
NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=pk_test_xxx
STRIPE_PRICE_ID=price_xxx

# App
NEXT_PUBLIC_SITE_URL=http://localhost:3000

Development

# Start web app
yarn dev

# Open http://localhost:3000

Demo Mode

Visit /demo to try the app without signing up. Select a demo user role to explore features.


Features

πŸ“… Roster Management

  • Drag-and-drop scheduling with visual calendar
  • Automatic conflict detection
  • Copy previous week's roster
  • Publish rosters with one click

⏰ Time Tracking

  • GPS-verified clock in/out
  • Track actual hours vs rostered
  • Break tracking

πŸ‘₯ Team Management

  • Employee invitation via email
  • Role-based access (Owner, Manager, Employee)
  • ABN validation for Australian businesses

πŸ“Š Timesheets

  • Automatic timesheet generation
  • CSV export for payroll
  • Labour cost tracking

πŸ’³ Billing

  • Free tier (up to 5 employees)
  • Starter plan ($4 + GST / employee / month)
  • Stripe-powered payments

Deployment

Web (Vercel)

# Install Vercel CLI
npm i -g vercel

# Deploy
vercel --prod

Add environment variables in Vercel dashboard.

Database (NeonDB)

  1. Create project at neondb.tech
  2. Copy connection string
  3. Run migrations (schema in docs/)

Testing

cd apps/web

# Run E2E tests
npx playwright test

# Run with UI
npx playwright test --ui

Documentation

See docs/wiki/ for detailed guides:


License

Proprietary - All rights reserved by Sensible Analytics


Built with ❀️ in Australia

About

Australian workforce management for shift-based businesses - rostering, time tracking, team management

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages