* feat(ui): improve mobile sidebar and dashboard layout - Enlarge compass logo on dashboard page (size-14 idle, size-10 active) - Reposition logo higher with -mt-16 margin - Add 6rem spacing between logo and chat - Remove feedback hover button from bottom right - Add event-based feedback dialog opening for mobile sidebar - Remove feedback buttons from site header (mobile and desktop) - Add mobile theme toggle button to header - Increase mobile menu hitbox to size-10 - Reduce search hitbox to separate clickable area - Remove redundant Compass/Get Help/Assistant/Search from sidebar - Rename "People" to "Team" - Add mobile-only feedback button to sidebar footer - Reduce mobile sidebar width to 10rem max-width - Center sidebar menu icons and labels on mobile - Clean up mobile-specific padding variants * chore: add local development setup system - Create .dev-setup directory with patches and scripts - Add apply-dev.sh to easily enable local dev without WorkOS - Add restore-dev.sh to revert to original code - Document all changes in README.md - Store cloudflare-context.ts in files/ as new dev-only file - Support re-apply patches for fresh development sessions This allows running Compass locally without WorkOS authentication for development and testing purposes. --------- Co-authored-by: Avery Felts <averyfelts@Averys-MacBook-Air.local>
COMPASS
Construction Open Management Platform for Automated System Solutions
COMPASS is an open-source construction project management system built with Next.js, designed as a 1:1 drop-in replacement for BuilderTrend - without the bloat, recurring SaaS costs, or vendor lock-in.
The Problem
Creating a new project at a construction company currently means:
- Manually generating project codes across multiple systems
- Filling out the same information in 3-4 different spreadsheets
- Setting up 50+ CSI folders manually (30+ minutes of clicking)
- Hoping nothing was missed or mis-typed
The Solution
With COMPASS:
- 2-minute project creation - Single form, everything auto-generated
- Auto-provisioning - Project code, folders, permissions, initial budget
- Zero recurring costs - Self-hosted, open-source
- Full data ownership - Your data, your infrastructure
Features
- Automated Project Setup - Template-based creation with auto-generated numbering
- Construction Lifecycle Management - Status tracking from inquiry through completion
- Dual Interfaces - Separate dashboards for internal teams and clients
- Budget Tracking - CSI-based budget structure with version control
- Schedule Management - Gantt charts with dependencies and critical path
- Change Order Workflow - Major/minor change orders with approval routing
- Contact Logging - Manual and auto-detected client interactions
- Document Management - S3-compatible file storage with versioning
Tech Stack
| Layer | Technology |
|---|---|
| Framework | Next.js 15 (App Router) |
| Language | TypeScript 5.x |
| UI | React 19, shadcn/ui, Tailwind CSS 4 |
| Database | PostgreSQL with Prisma ORM |
| Auth | WorkOS (SSO, directory sync) |
| Storage | S3-compatible (AWS S3 / MinIO) |
| Jobs | BullMQ + Redis |
| Resend |
Getting Started
Prerequisites
- Node.js 20+
- pnpm 9+
- PostgreSQL 15+
- Redis (for background jobs)
Quick Start
# Clone the repository
git clone https://github.com/your-org/compass.git
cd compass
# Install dependencies
pnpm install
# Set up environment variables
cp .env.example .env.local
# Edit .env.local with your configuration
# Set up database
pnpm db:push
pnpm db:seed
# Start development server
pnpm dev
Open http://localhost:3000 to see the application.
Environment Setup
Create a .env.local file with the following variables:
# Database
DATABASE_URL="postgresql://user:password@localhost:5432/compass"
# Auth (WorkOS)
WORKOS_API_KEY="sk_..."
WORKOS_CLIENT_ID="client_..."
WORKOS_REDIRECT_URI="http://localhost:3000/api/auth/callback"
# Storage (S3-compatible)
S3_ENDPOINT="http://localhost:9000"
S3_ACCESS_KEY_ID="minioadmin"
S3_SECRET_ACCESS_KEY="minioadmin"
S3_BUCKET="compass-files"
# Email (Resend)
RESEND_API_KEY="re_..."
# Redis
REDIS_URL="redis://localhost:6379"
Deployment
Docker (Self-hosted)
# Build and start all services
docker compose up -d
# Run database migrations
docker compose exec app pnpm db:migrate
The Docker setup includes:
- Next.js application
- PostgreSQL database
- MinIO (S3-compatible storage)
- Redis (caching and job queues)
Cloudflare Workers
COMPASS can be deployed to Cloudflare Workers for edge deployment:
# Build for Cloudflare
pnpm build:cf
# Deploy
pnpm deploy:cf
Uses Cloudflare D1, R2, and Queues for a fully serverless deployment.
Documentation
Contributing
We welcome contributions! Please see our Contributing Guide for details.
License
COMPASS is open-source software licensed under the AGPL-3.0 License.
Support
- Documentation: docs.compass-pm.dev
- Issues: GitHub Issues
- Discussions: GitHub Discussions
COMPASS - Breaking the monopolistic stranglehold of expensive SaaS platforms on the construction industry.