Synaplan
Open-source AI platform for companies: self-hosted AI agents, GDPR-compliant chatbot widget, RAG knowledge base, WhatsApp and Outlook AI, MCP, multi-model routing. Docker, Kubernetes or hosted in Germ
Protessera is plug-and-play manufacturing ERP: sales, engineering, purchasing, production, quality, and accounting in one connected system. 60-day free trial, no card — no consultants required. First
BusinessTypeScript · CSSGitHub @jmwilson92OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Protessera is plug-and-play manufacturing ERP: sales, engineering, purchasing, production, quality, and accounting in one connected system. 60-day free trial, no card — no consultants required. First year, Shop is $10/month for the first user plus $2/month for each additional user (a 10-user shop pays $28/month). Starter is $250 for the first year, Growth $500, and Business $1,000. After the first 12 months, standard prices apply: Shop $30/user/month, Starter $3,600/year, Growth $8,400/year, Bus
Taken from the repository README
Loading the full README.
Read the full README ↗Integrated manufacturing ERP for high-reliability environments (aerospace, defense, precision assembly). Built as a single cohesive Next.js 15 application with full day/night theming (navy/slate night mode, crisp white day mode), teal/amber status accents, shop-floor tablet support, and large-screen information radiators.
npm install
npm run setup # prisma generate + db push + rich seed
npm run dev # http://localhost:3000
Optional reset anytime:
npm run db:reset
docker compose up -d
# set DATABASE_URL from .env.postgres.example
# change prisma/schema.prisma datasource provider to "postgresql"
# use @prisma/adapter-pg instead of better-sqlite3 in src/lib/db.ts
npm run setup
Navigation is organized into seven domains (sidebar groups are collapsible; state persists per browser). The same structure powers the ⌘K / Ctrl+K command palette, with keyword search (e.g. "8d" → CAR, "rfq" → Quotes).
| Module | Route | Highlights |
|---|---|---|
| Command center | / | Cross-module KPIs, EVM strip, quality alerts |
| My approvals | /approvals | Manager queue: reports' PTO, timesheets, expenses |
| Production floor | /floor | Color-coded WO tiles, capacity load, sign-off % |
| Info radiators | /radiators | Large-font wall display, auto-refresh |
| Value stream | /value-stream | Supplier→Ship live flow + constraints |
| AI assistant | /ai | Carina settings; optional xAI API |
| Module | Route | Highlights |
|---|---|---|
| Quotes | /sales/quotes | Quote → SO conversion |
| Sales orders | /sales | Order entry, fulfillment planning, ship gate |
| Customers | /customers | Accounts, credit holds |
| Shipping | /shipping | Pack/ship, lot & serial trace |
| Module | Route | Highlights |
|---|---|---|
| Work orders | /work-orders | Production / prototype / task-only + travelers |
| Work instructions | /work-instructions | CM workflow Draft→Eng→CM→Released |
| Workcenters | /workcenters | Capacity and cell definitions |
| Kitting | /kitting | Kit build/complete tied to travelers |
| Planning & MRP | /planning | Forecasts, material requirements, capacity/workload |
| Module | Route | Highlights |
|---|---|---|
| Engineering | /engineering | JIRA-style board, disciplines, WBS campaigns |
| Items | /items | Item master + item cards |
| BOMs | /bom | Multi-rev, prototype banner, certify, where-used |
| Products (PLM) | /products | Product lifecycle linked to PMO |
| Config management | /cm | ECR board votes, impact analysis, doc library |
| UOM master | /uom | Units and conversions |
| Module | Route | Highlights |
|---|---|---|
| Purchasing | /purchasing | PR→PO→Receive (pass/fail→MRB), PO search |
| Receiving | /receiving | Dock travelers, partial receipts, GFP intake |
| Suppliers / ASL | /suppliers | Live scorecards (OTD, PPM, cost) |
| Inventory | /inventory | Multi-loc, ownership, quarantine, kanban |
| Virtual assets | /virtual-assets | Licenses and intangibles |
| Module | Route | Highlights |
|---|---|---|
| QA inspection | /qa | Visual / GD&T / first-article queue |
| Test center | /test-center | Test stations and results |
| Quality / NCR | /quality | Inspections, NCR trends, yield |
| MRB / CAR | /mrb | Disposition → inventory + scorecard; corrective actions |
| Gov property | /government-property | GFP/CAP, UID, DFARS checks |
| Module | Route | Highlights |
|---|---|---|
| Leadership | /leadership | Executive rollup |
| PMO | /pmo | Programs, projects, WBS, SPI/CPI, PI planning, alerts |
| Accounting | /accounting | GL, P&L, BS, TB, AR/AP, WO variance |
| HR / workforce | /hr | Role-aware: employees see their profile (reviews, goals, PTO, documents), managers see My Team (reviews, goals, approvals), HR sees administration |
| Permissions | /admin/permissions | Full view + action permission catalog; custom groups per company |
Demo identity switcher — the sidebar footer switches the signed-in demo user, so you can experience the app as an executive, HR, a people manager, or a shop-floor employee (permissions and HR views change accordingly).
Day / night mode — toggle in the header; the choice persists and is applied before first paint (no flash). Theming is done centrally in src/app/globals.css by remapping the slate + accent color ramps for html.light, so module pages don't carry per-theme classes.
flowchart TB
subgraph UI["Next.js 15 App Router"]
RSC[Server Components]
SA[Server Actions]
Client[Client charts / cmdk / AI chat]
end
subgraph Domain["Domain services"]
SC[supply-chain.ts]
WO[work-orders.ts]
BOM[bom.ts]
AI[ai.ts]
AUDIT[audit.ts]
end
subgraph Data["Prisma + SQLite / PostgreSQL"]
DB[(Protessera DB)]
end
RSC --> Domain
SA --> Domain
Domain --> AUDIT
Domain --> DB
Client --> SA
flowchart LR
PR[Purchase Request] --> PO[Purchase Order]
PO --> RCV[Receipt]
RCV --> INV[Inventory]
RCV --> INSP[Incoming Inspection]
INSP -->|PASS| AVAIL[Available stock]
INSP -->|FAIL| NCR[NCR]
NCR --> MRB[MRB Case]
MRB --> Q[Quarantine hold]
MRB --> DISP[Disposition]
DISP --> INV
DISP --> SC[Supplier Scorecard]
SC --> CAR[CAR optional]
flowchart LR
BOMR[BOM Rev] -->|PROTOTYPE| FAI[Prototype WO]
FAI --> CERT[Certify BOM]
CERT --> PROD[Production WO]
WI[Work Instruction Released] --> PROD
PROD --> STEPS[Step sign-offs]
STEPS --> FLOOR[Floor board %]
STEPS -->|FAIL test| NCR2[NCR + Hold]
PROD --> COST[Actual cost → Projects / GL]
Implemented in src/lib/services/supply-chain.ts and wired from Purchasing UI:
PARTIAL_RECEIPT / RECEIVED)RECEIPT loggedmrbCaseId setUSE_AS_IS / REWORK / SCRAP / RETURN_TO_SUPPLIER / REPAIR) releases or scraps stock and may open a CARupdateSupplierScorecard recomputes OTD (receipt vs promise), quality PPM (NCR qty / received), overall rating A–F and writes scorecard historyDRAFT / PROTOTYPE / IN_REVIEW / CERTIFIED / OBSOLETEPROTOTYPEWorkOrderStepCompletion rowsownership: GOVERNMENT (visual violet strip)src/lib/services/ai.ts)XAI_API_KEY → calls xAI Chat Completions with plant JSON context (tool-calling ready)better-sqlite3 adapter) / Docker PostgreSQLprisma/
schema.prisma # Full manufacturing domain model
seed.ts # Rich integrated demo data
src/
app/ # Routes per module + server actions
components/ # UI, layout, charts, shared
lib/
db.ts # Prisma client (SQLite adapter)
audit.ts # Audit logging
auth.ts # Demo role-based user
services/ # Supply chain, WO, BOM, AI
pdf.ts # Branded PDF helpers
utils.ts # cn, formatters, status colors, EVM
docker-compose.yml
Sales Order (required date)
→ Stock check finished goods (or Bypass stock → order full demand / full BOM)
→ allocate if available
→ else Work Order (BOM + WI digital traveler, due date schedule)
→ BOM material check
→ short (or bypass)? auto Purchase Request
→ PR multi-step approval (threshold policy) → Convert to PO
→ Receiving traveler on PO issue
→ Receive: per-line qty (partial OK) + photos + putaway location
→ partial? child traveler for remainder
→ all lines received → Close PO from receiving
→ Ready to kit → Kit order (travels with WO)
→ Kit complete → Start production → step sign-offs
→ Complete → FG to stock
→ READY_TO_SHIP (respects allowEarlyShip / shipNotBefore)
→ Shipping pull & ship (inventory + lot/serial trace)
| Route | Role in flow |
|---|---|
/sales | Create SO, plan fulfillment (optional bypass stock), ship gate |
/purchasing | PR multi-step approve → PO; keyword search all POs past/present |
/purchasing/approvals | Configure PR threshold approvers / steps |
/receiving | Dock travelers; partial receive, photos, putaway area, child remainders |
/inventory | Stock by location · lot/serial trace · quarantine |
/kitting | Create / complete kit for traveler |
/work-orders/[id] | Digital traveler, material (bypass BOM stock), kit, sign-off, complete |
/shipping | Pull queue & confirm ship |
Every step writes TraceEvent + material transactions for genealogy.
Default policy (seeded, editable at /purchasing/approvals):
PURCHASING)ACCOUNTING)ADMIN)Steps below a PR’s dollar amount are skipped. Switch DEMO_USER_ROLE to walk steps as different roles; ADMIN can always approve.
On the traveler, enter only the qty that arrived, attach dock photos, and must select a stock location. Material inspects then putaways there. Open remainder spawns a child traveler. Close PO is enabled only when every line is fully received.
SO-00002 → Plan fulfillment → WO + shortage PR → approve/convert/receive → Put away on Inventory → Kitting → start production → complete → shipASM-1000 Rev C PROTOTYPE → create Prototype WO → Certify after FAI storyPRJ-AERO-01 — SPI/CPI and linked WOsECR-00001 — cast board votes| Phase | Focus |
|---|---|
| Auth | NextAuth / Clerk / SSO; enforce RBAC matrix in auth.ts on every action |
| Jobs | Queue (BullMQ / Inngest) for scorecard recompute, email, PDF batch, MRP |
| Files | S3-compatible storage for drawings, inspection photos, traveler attachments |
| DB | PostgreSQL primary; read replicas; row-level security for multi-site |
| Realtime | WebSockets / SSE for floor & radiators instead of poll refresh |
| AI | Grok tool calling: receivePo, dispositionMrb, listOpenHolds, etc. |
| MES | Barcode/RFID scan endpoints, device auth, offline tablet sync |
| Compliance | Electronic signature 21 CFR Part 11-style, export packages for DCMA |
| Observability | OpenTelemetry, structured audit export, SIEM sink |
| Hardening | Rate limits, CSRF on actions, secrets manager, backup/DR drills |
| Command | Description |
|---|---|
npm run setup | Generate client, push schema, seed |
npm run db:reset | Wipe DB + reseed |
npm run db:studio | Prisma Studio |
npm run dev | Dev server (Turbopack) |
npm run build | Production build |
Proprietary demo / prototype — adapt for your organization.