# 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 # E2E-Tests (Playwright API-Tests via Docker-Stack) test-e2e: docker compose -f test-automation/docker-compose.e2e.yml up --build --abort-on-container-exit --exit-code-from e2e-runner # ─── 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)"