managarten/docs/DEVELOPMENT_SCRIPTS.md
Wuesteon d36b321d9d style: auto-format codebase with Prettier
Applied formatting to 1487+ files using pnpm format:write
  - TypeScript/JavaScript files
  - Svelte components
  - Astro pages
  - JSON configs
  - Markdown docs

  13 files still need manual review (Astro JSX comments)
2025-11-27 18:33:16 +01:00

4.7 KiB

Development Scripts

Diese Dokumentation beschreibt die verfügbaren Entwicklungsbefehle im Manacore Monorepo.

Übersicht

Das Monorepo nutzt Turborepo für parallele Builds und intelligentes Caching. Alle Befehle werden über pnpm ausgeführt.

Globale Befehle

Befehl Beschreibung
pnpm dev Startet alle Apps (Web, Mobile, Landing, Backend)
pnpm build Baut alle Packages und Apps
pnpm test Führt alle Tests aus
pnpm lint Führt Linting für alle Packages aus
pnpm type-check TypeScript-Typprüfung für alle Packages
pnpm clean Bereinigt Build-Artefakte
pnpm format Formatiert alle Dateien mit Prettier
pnpm format:check Prüft Formatierung ohne Änderungen

App-Typ Befehle

Diese Befehle starten alle Apps eines bestimmten Typs gleichzeitig:

Befehl Beschreibung Apps
pnpm dev:web Startet alle Web-Apps maerchenzauber, manacore, manadeck, memoro
pnpm dev:landing Startet alle Landing Pages maerchenzauber, manacore, manadeck, memoro
pnpm dev:mobile Startet alle Mobile-Apps maerchenzauber, manacore, manadeck, memoro

Beispiel

# Alle Web-Apps starten (SvelteKit)
pnpm dev:web

# Alle Landing Pages starten (Astro)
pnpm dev:landing

# Alle Mobile-Apps starten (Expo)
pnpm dev:mobile

Projekt-spezifische Befehle

Diese Befehle starten ein komplettes Projekt mit allen zugehörigen Apps und Dependencies:

Befehl Beschreibung
pnpm maerchenzauber:dev Startet Maerchenzauber (Backend, Web, Mobile, Landing)
pnpm manacore:dev Startet Manacore (Web, Mobile, Landing)
pnpm manadeck:dev Startet Manadeck (Web, Mobile, Landing)
pnpm memoro:dev Startet Memoro (Web, Mobile, Landing)

Turbo Filter

Für erweiterte Kontrolle kannst du Turbo-Filter direkt verwenden:

# Einzelne App starten
pnpm turbo run dev --filter=@storyteller/web

# Mehrere Apps kombinieren
pnpm turbo run dev --filter=manacore-web --filter=memoro-web

Package-Namen Referenz

Da die Package-Namen im Monorepo unterschiedlich sind, hier eine Übersicht:

Projekt Web Landing Mobile Backend
maerchenzauber @storyteller/web @storyteller/landing @storyteller/mobile @storyteller/backend
manacore manacore-web manacore-landing manacore -
manadeck web landing manadeck -
memoro memoro-web memoro-landing memoro -

Filter-Syntax

Pattern Beschreibung
--filter=name Exakte Package-Übereinstimmung
--filter=name... Package und alle Dependencies
--filter='@scope/*' Alle Packages im Scope

Port-Zuweisungen

Wenn mehrere Apps gleichzeitig laufen, verwenden sie unterschiedliche Ports:

App-Typ Projekt Standard-Port
Web maerchenzauber 5173
Web manacore 5174
Web manadeck 5175
Web memoro 5176
Landing maerchenzauber 4321
Landing manacore 4322
Landing manadeck 4323
Landing memoro 4324
Backend maerchenzauber 3000

Hinweis: Die tatsächlichen Ports können je nach Konfiguration variieren.

Tipps

  1. Schnelleres Starten: Nutze dev:web statt dev wenn du nur an Web-Apps arbeitest
  2. Parallele Entwicklung: Turbo führt alle Tasks parallel aus und nutzt Caching
  3. Selektives Bauen: Nutze Filter um nur relevante Packages zu bauen