mirror of
https://github.com/s-frick/effigenix.git
synced 2026-03-28 15:29:34 +01:00
- packages/ui: Shared React Component Library (Button, Card, Badge, Input) mit Tailwind v4 @theme Design Tokens (oklch) - apps/web: ERP Web-UI (Vite + React + Tailwind v4, API-Proxy :8080) - apps/scanner: Tauri v2 Mobile App mit Barcode-Scanner Plugin (cfg(mobile) für Desktop-Kompatibilität) - flake.nix: Nix Flake mit rust-overlay, Tauri System-Deps (GTK, WebKitGTK, libsoup, OpenSSL), ersetzt shell.nix - justfile: Dev-Befehle für alle Projekte (backend, cli, web, scanner) - frontend/CLAUDE.md: Agent Guide mit Base UI Docs Referenz
91 lines
3 KiB
Makefile
91 lines
3 KiB
Makefile
# Effigenix ERP – Development Commands
|
||
|
||
# Default: alle Recipes auflisten
|
||
default:
|
||
@just --list
|
||
|
||
# ─── Dev Modi ─────────────────────────────────────────────
|
||
|
||
# Backend starten (Spring Boot)
|
||
dev-backend:
|
||
cd backend && SENTRY_DSN=$(grep '^SENTRY_DSN=' ../.env 2>/dev/null | cut -d= -f2-) mvn spring-boot:run
|
||
|
||
# CLI/TUI starten
|
||
dev-cli:
|
||
cd frontend/apps/cli && node --env-file=../../../.env --import tsx src/index.tsx
|
||
|
||
# Web-UI starten (Vite :3000)
|
||
dev-web:
|
||
cd frontend && pnpm run --filter @effigenix/web dev
|
||
|
||
# Scanner-App starten (Tauri + Vite :1420)
|
||
dev-scanner:
|
||
cd frontend/apps/scanner && pnpm tauri dev
|
||
|
||
# UI-Library im Watch-Modus bauen
|
||
dev-ui:
|
||
cd frontend && pnpm run --filter @effigenix/ui dev
|
||
|
||
# ─── Build ────────────────────────────────────────────────
|
||
|
||
# Frontend komplett bauen
|
||
build-frontend:
|
||
cd frontend && pnpm build
|
||
|
||
# Backend bauen
|
||
build-backend:
|
||
cd backend && mvn package -DskipTests
|
||
|
||
# ─── Checks ──────────────────────────────────────────────
|
||
|
||
# Frontend Typecheck
|
||
typecheck:
|
||
cd frontend && pnpm typecheck
|
||
|
||
# Frontend Tests
|
||
test-frontend:
|
||
cd frontend && pnpm test
|
||
|
||
# Backend Tests
|
||
test-backend:
|
||
cd backend && mvn test
|
||
|
||
# ─── Code Generation ─────────────────────────────────────
|
||
|
||
# OpenAPI Spec + TypeScript Types generieren
|
||
generate-openapi:
|
||
./scripts/generate-openapi.sh
|
||
|
||
# ─── Datenbank ────────────────────────────────────────────
|
||
|
||
# Testdaten einspielen
|
||
seed-testdata:
|
||
PGPASSWORD=effigenix nix shell nixpkgs#postgresql --command psql -f backend/src/main/resources/db/changelog/changes/099-seed-testdata.sql -h localhost -p 5432 -U effigenix -d effigenix
|
||
|
||
# ─── Fuzz Testing ─────────────────────────────────────────
|
||
|
||
# Alle Fuzz-Tests
|
||
fuzz:
|
||
cd backend && mvn test -Pfuzz
|
||
|
||
# Fuzz-Regressionstests
|
||
fuzz-regression:
|
||
cd backend && mvn test -Pfuzz-regression
|
||
|
||
# Einzelnen Fuzz-Test ausführen (z.B. just fuzz-single BatchFuzzTest)
|
||
fuzz-single TEST:
|
||
cd backend && mvn test -Pfuzz -Dtest={{ TEST }}
|
||
|
||
# ─── Services ─────────────────────────────────────────────
|
||
|
||
# Bugsink starten (Error Tracking)
|
||
bugsink:
|
||
@. ./.env 2>/dev/null || true; \
|
||
docker start bugsink 2>/dev/null || \
|
||
docker run \
|
||
--name bugsink \
|
||
-p 8000:8000 \
|
||
-e SECRET_KEY=${BUGSINK_SECRET_KEY:?BUGSINK_SECRET_KEY muss gesetzt sein} \
|
||
-e CREATE_SUPERUSER=admin:admin \
|
||
bugsink/bugsink:latest
|
||
@echo "Bugsink: http://localhost:8000 (admin/admin)"
|