Skip to content

adamlauzon/ERP-System

Repository files navigation

ECM ERP System - Documentation

Documents

# Document Description
01 Architecture Overview Tech stack, project structure, multi-tenancy, backend/frontend architecture, financial architecture, integration architecture, key decisions
02 Database Schema Complete SQL DDL for all tables: operations (parts, BOMs, purchasing, inventory, sales, jobs), finance (GL, AP, AR, tax, banking), and platform (custom fields, webhooks, integrations)
03 API Reference All REST endpoints organized by module — operations, finance, integrations
04 Implementation Phases 13 phased build plan (Phase 0-12) with detailed checklists
05 Domain Concepts ECM domain explanation, entity examples, financial flow walkthrough, integration examples, key workflows
06 App Structure Frontend application structure — sidebar navigation, dashboard, every page/form/button for all modules, status workflows, Angular route configuration
07 Improvement Plan Current-phase improvements: bug fixes, kitting system, auto-GL with reversals, dashboard enhancements, UX improvements, international tax strategy
08 Future Phases Deferred capabilities: corporate theme, part data enrichment, MES integration, 2FA/security, EDI, advanced analytics, shipping, quality management
09 Event Dispatcher Queue-swappable event architecture: how all side-effects (GL, planning, webhooks, notifications) flow through a single dispatch function. Handler rules, planning cascade design, how to add new handlers

Quick Reference

Stack: Node.js + Express + TypeScript | Angular 19+ | PostgreSQL 16 | Knex.js | Event Dispatcher (queue-swappable)

Operations: Parts/BOMs, PLM/ECOs, Vendor/Purchasing, Inventory (serialized), Kitting (multi-job, backflush/front-flush/kanban), Sales, Jobs/Work Orders, MRP Planning

Finance: General Ledger (auto-posting with cancellation reversals), Accounts Payable, Accounts Receivable, Tax (international — Canada + Thailand), Banking/Reconciliation

Platform: Custom Fields (Form Builder), Webhooks, API Keys, Integration Connectors, Tenant Settings

Multi-tenancy: Schema-per-tenant (knex.withSchema())

Auth: JWT + API keys (deferred — stubbed during initial development)

Integration: Event-driven webhooks, scoped API keys for external systems (MES, shipping, distributors)

About

Modern ERP for electronics contract manufacturers. Real-time, event-driven planning - shortages surface the moment inventory changes, no batch MRP run required. API-first with signed webhooks out and scoped API keys in, built to connect with MES, shipping, and EDI. Multi-tenant PostgreSQL, Node/TypeScript, Angular.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages