1
0
Fork 0
mirror of https://github.com/s-frick/effigenix.git synced 2026-03-28 06:29:35 +01:00
Effigenix ERP - Branchenlösung für lebensmittelverarbeitende KMUs
Find a file
Sebastian Frick c047ca93de feat(inventory): Inventur anlegen und Zählpositionen befüllen (US-6.1)
InventoryCount-Aggregate mit CountItem-Entities, Auto-Populate aus
Stock-Daten, vollständige DDD-Schichten inkl. Edge-Case-Tests und
Jazzer-Fuzz-Test. 1909 Tests grün.
2026-02-26 12:36:30 +01:00
.claude/skills feat: add Spring Boot ERP application with user management domain 2026-02-17 19:33:24 +01:00
backend feat(inventory): Inventur anlegen und Zählpositionen befüllen (US-6.1) 2026-02-26 12:36:30 +01:00
docs/tickets feat(production): articleId für Rezepte, TUI-Verbesserungen mit UoM-Carousel, ArticlePicker und Zutaten-Reorder 2026-02-20 01:15:34 +01:00
frontend feat(production): Batch bei Produktionsstart automatisch erstellen (#73) 2026-02-26 12:32:04 +01:00
loadtest fix(inventory): confirmReservation – Layering, Error-Semantik und FK-Bug 2026-02-25 23:13:12 +01:00
scripts fix(infra): no-db Profil robuster machen und Stub-Beans ergänzen 2026-02-25 21:47:19 +01:00
.gitignore feat(test): Jazzer Fuzz-Tests für Production-Aggregate einführen 2026-02-26 08:51:44 +01:00
CLAUDE.md docs: update memory 2026-02-19 12:48:22 +01:00
makefile feat(test): Jazzer Fuzz-Tests für Production-Aggregate einführen 2026-02-26 08:51:44 +01:00
README.md fix(frontend): pnpm dev und pnpm build ohne manuelle Vorbereitung 2026-02-18 21:39:32 +01:00
shell.nix feat(frontend): TypeScript-Monorepo mit Terminal-UI für Effigenix ERP 2026-02-18 12:28:16 +01:00
TODO.md docs(ddd): detaillierte Domain Models für Production, Quality und Inventory BC 2026-02-19 01:13:12 +01:00

Effigenix Fleischerei ERP

ERP-System für Fleischereien mit HACCP-Compliance, GoBD-konform, Mehrfilialen-Support.

Schnellstart

Backend

# PostgreSQL starten (Docker)
docker run --name effigenix-postgres \
  -e POSTGRES_DB=effigenix \
  -e POSTGRES_USER=effigenix \
  -e POSTGRES_PASSWORD=effigenix \
  -p 5432:5432 \
  -d postgres:15

# Backend bauen & starten
cd backend
mvn spring-boot:run

Kein Docker? Das Backend startet auch ohne Datenbank im Stub-Modus (Warnlog erscheint). Die OpenAPI-Spec ist dann unter http://localhost:8080/api-docs abrufbar.

Frontend (Terminal UI)

cd frontend
pnpm install
pnpm dev      # startet direkt, kein Build-Schritt nötig

Repository Structure

effigenix/
├── backend/          # Java Spring Boot Backend
│   ├── src/          # Java source code (DDD + Clean Architecture)
│   ├── docs/         # Backend documentation
│   └── pom.xml
│
└── frontend/         # TypeScript Frontend (pnpm Monorepo)
    ├── apps/cli/     # Terminal UI (Ink/React)
    └── packages/     # Shared: api-client, types, validation, config

Architektur

Domain-Driven Design + Clean Architecture + Java 21 + Spring Boot

┌─────────────────────────────────────────────────────┐
│  Presentation (REST Controllers)                     │
└─────────────────────────────────────────────────────┘
                         ↓
┌─────────────────────────────────────────────────────┐
│  Application Layer (Use Cases)                       │
│  - Transaction Script for Generic Subdomains        │
│  - Rich Domain Model for Core Domains               │
└─────────────────────────────────────────────────────┘
                         ↓
┌─────────────────────────────────────────────────────┐
│  Domain Layer (DDD Tactical Patterns)                │
│  - Aggregates, Entities, Value Objects              │
│  - Domain Events, Repositories                      │
└─────────────────────────────────────────────────────┘
                         ↓
┌─────────────────────────────────────────────────────┐
│  Infrastructure Layer                                │
│  - Spring, JPA, PostgreSQL, JWT, REST               │
└─────────────────────────────────────────────────────┘

Bounded Contexts (11)

Core Domains

  • Production Management Rezeptverwaltung, Chargenproduktion
  • Quality Management HACCP-Compliance, Temperaturüberwachung
  • Inventory Management Bestandsführung, Lagerverwaltung
  • Procurement Einkauf, Wareneingang, Lieferanten
  • Sales Auftragserfassung, Rechnungsstellung, Kunden

Supporting Domains

  • Labeling Etikettendruck mit HACCP-Daten
  • Filiales Mehrfilialen-Verwaltung

Generic Subdomains

  • User Management Authentifizierung, Autorisierung, Rollen (implementiert)
  • Reporting Standard-Reports
  • Notifications E-Mail/SMS-Benachrichtigungen

Tech Stack

Schicht Technologie
Backend Java 21, Spring Boot 3.2, Spring Security 6
Datenbank PostgreSQL 15+, Liquibase
Auth JWT (JJWT), Stateless
Build Maven
Frontend TypeScript, React, Ink (TUI)
Packages pnpm Workspaces, tsup, Zod, Axios

Weiterführend

License

Proprietary Effigenix GmbH