A modern, multi-tenant status page platform for managing service health, incidents, and scheduled maintenance with real-time public status pages.
- Multi-Tenant Architecture - Complete organization isolation with secure data scoping
- Real-Time Updates - WebSocket-powered live status updates
- Incident Management - Full lifecycle management from detection to resolution
- Public Status Pages - Branded, accessible status communication for customers
- Team Collaboration - Organization-based team management and permissions
| Layer | Technology |
|---|---|
| Frontend | Next.js 15 (App Router), Tailwind CSS, Shadcn UI |
| Backend | Go, Gin Framework, PostgreSQL |
| Authentication | Clerk (JWT-based, Multi-tenant) |
| Deployment | Vercel (Frontend), Railway (Backend) |
| Development | Cursor, DeepSeek, GitHub |
- ✅ User Authentication - Secure login with Clerk integration
- ✅ Multi-Tenant Organizations - Complete data isolation per organization
- ✅ Team Management - Role-based access and collaboration
- ✅ Service Management - CRUD operations with real-time status tracking
- ✅ Incident & Maintenance - Comprehensive lifecycle management
- ✅ Public Status Pages - Customer-facing status communication
- ✅ Real-Time Updates - WebSocket integration for live status changes
- ✅ External Health Checks - API endpoints for external monitoring
- ✅ Email Notifications - Automated stakeholder communication
- ✅ Uptime Analytics - Historical performance tracking
- ✅ Responsive Design - Mobile-first, accessible interface
- Node.js 18+ and npm
- Go 1.21+
- PostgreSQL database
- Clerk account for authentication
git clone https://github.com/swamimalode07/ClearStatus.git
cd ClearStatuscd status-frontend
cp .env.example .envInstall and start:
npm install
npm run devFrontend available at http://localhost:3000
cd backend-go
cp .env.example .envStart the backend:
go run main.goAPI available at http://localhost:8080
- Data Isolation: All data scoped by organization ID from Clerk
- Security: JWT validation with organization context on every request
- Scalability: Horizontal scaling with tenant-aware routing
- Users authenticate via Clerk (email/OTP or Google)
- Custom JWT template includes organization ID
- Backend validates JWT and scopes all operations to organization
- Public pages accessible via organization-specific URLs
/api/auth/* - Authentication endpoints
/api/services/* - Service management (org-scoped)
/api/incidents/* - Incident management (org-scoped)
/api/external/* - Public health check endpoints
/status?org=<id> - Public status page
ClearStatus/
├── backend-go/ # Go backend service
│ ├── main.go # Application entry point
│ ├── routes/ # API route handlers
│ ├── middleware/ # Authentication & validation
│ └── models/ # Data models
├── status-frontend/ # Next.js frontend
│ ├── app/ # App Router pages
│ ├── components/ # Reusable UI components
│ ├── lib/ # Utilities and configurations
│ └── public/ # Static assets
└── README.md
- Frontend: Deployed on Vercel with automatic deployments
- Backend: Deployed on Railway with PostgreSQL integration
- Environment: Secure environment variable management
Both platforms require proper environment variable configuration matching the local setup requirements.
- Live Demo: clearstatus.vercel.app
- Authentication: Use any email (OTP sent) or Google sign-in
- Public Status: Access organization status pages without authentication
- Security-First: Multi-tenant JWT validation with organization scoping
- Modern Stack: Latest Next.js features with App Router and React Server Components
- Real-Time: WebSocket integration for live status updates
- Production-Ready: Clean architecture with separation of concerns
- Developer Experience: Comprehensive tooling and clear code structure