-
Notifications
You must be signed in to change notification settings - Fork 0
Home
Welcome to the Jobrythm wiki β a full-stack SaaS job-management platform built for trade businesses (plumbers, electricians, HVAC technicians, handymen). Manage jobs, clients, quotes, invoices, team members, recurring jobs, expenses, and more, all in one place.
π Source code: Jobrythm/jobrythm-fullstack
Jobrythm is a self-hostable, opinionated workflow tool for small trade businesses. It bundles a CRM, a job tracker, branded quote/invoice PDFs with email delivery, Stripe-powered subscription billing, AI-assisted data entry, and an admin panel β all in a single deployable image.
Key entities flow like this:
Client βββΊ Job βββΊ Line Items βββΊ Quote βββΊ Invoice βββΊ Payment
β
βββ Appointments
βββ Expenses
βββ Checklists
βββ Attachments
βββ Time Entries
- Getting Started β install and run with Docker, plus local development
-
Environment Variables β full reference for
.envconfiguration - Deployment β production deployment guide
- Architecture β high-level design, request flow, monorepo layout
- Backend Development β TypeScript / Express / TypeORM conventions
- Frontend Development β React / Vite / TanStack Query conventions
- Database Schema β entities and relationships
- API Reference β full REST API
- Authentication β JWT + refresh-token flow
- Status Workflows β Job, Quote, and Invoice state machines
- Admin Panel β manage users, plans, and credentials
- AI Features β Google Gemini integration
- Stripe Billing β subscriptions, checkout, customer portal, webhooks
- Email SMTP β outgoing email configuration
- Integrations β QuickBooks, Xero, Google Ads, Meta Ads
- Security β security model and best practices
- Contributing β contribution workflow
- FAQ β common questions and troubleshooting
| Layer | Technology |
|---|---|
| Backend language | TypeScript (strict, ES Modules) |
| Backend framework | Express.js |
| Database | PostgreSQL via TypeORM |
| Auth | JWT + bcrypt + refresh tokens |
| PDFKit | |
| Nodemailer (SMTP) | |
| Payments | Stripe |
| AI |
@google/genai (Gemini) |
| Scheduler | node-cron |
| Validation | Zod |
| Frontend framework | React 18 + TypeScript |
| Frontend build | Vite |
| Routing | React Router v6 |
| Server state | TanStack Query |
| Client state | Zustand |
| HTTP | Axios |
| Forms | React Hook Form + Zod |
| UI | Tabler CSS + Tabler Icons |
MIT β see LICENSE.
Jobrythm Β· MIT License Β· Issues and contributions welcome
Getting started
Architecture & development
- Architecture
- Backend Development
- Frontend Development
- Database Schema
- API Reference
- Authentication
- Status Workflows
Features
Operations