# Manacore Monorepo - Befehle # Alles starten (PostgreSQL, Redis, Auth, Chat) pnpm docker:up:all pnpm docker:down pnpm dev:chat:app pnpm dev:contacts:app pnpm dev:storage:app pnpm dev:calendar:app pnpm dev:picture:app pnpm dev:manacore:app pnpm dev:zitare:app pnpm dev:presi:app # Deployment Landingpages: ## Einzelne Landing Page pnpm deploy:landing:chat pnpm deploy:landing:picture pnpm deploy:landing:manacore pnpm deploy:landing:manadeck pnpm deploy:landing:zitare Hier sind alle Landing Page URLs: | Projekt | URL | |----------|------------------------------------| | Chat | https://chat-landing-90m.pages.dev | | Picture | https://picture-landing.pages.dev | | ManaCore | https://manacore-landing.pages.dev | | ManaDeck | https://manadeck-landing.pages.dev | | Zitare | https://zitare-landing.pages.dev | | Presi | https://presi-landing.pages.dev | ## Alle auf einmal pnpm deploy:landing:all Übersicht aller wichtigen Befehle zum Starten, Stoppen und Verwalten der Apps. ## Inhaltsverzeichnis - [Voraussetzungen](#voraussetzungen) - [Docker & Infrastruktur](#docker--infrastruktur) - [Mana Core Auth](#mana-core-auth) - [Chat](#chat) - [Picture](#picture) - [Manadeck](#manadeck) - [Zitare](#zitare) - [Presi](#presi) - [Manacore](#manacore) - [Mana Games](#mana-games) - [Allgemeine Befehle](#allgemeine-befehle) - [Stoppen & Aufräumen](#stoppen--aufräumen) --- ## Voraussetzungen ```bash # Dependencies installieren (generiert auch .env Dateien) pnpm install # Nur .env Dateien neu generieren pnpm setup:env # Shared Packages bauen pnpm build:packages ``` --- ## Docker & Infrastruktur ### Starten ```bash # Nur PostgreSQL + Redis (Basis-Infrastruktur) pnpm docker:up # Mit Mana Core Auth Service pnpm docker:up:auth # Mit Chat Backend pnpm docker:up:chat # Alles starten (PostgreSQL, Redis, Auth, Chat) pnpm docker:up:all ``` ### Status & Logs ```bash # Container-Status anzeigen pnpm docker:ps # Alle Logs anzeigen (live) pnpm docker:logs # Nur Auth-Logs pnpm docker:logs:auth # Nur Chat-Logs pnpm docker:logs:chat ``` ### Stoppen ```bash # Alle Container stoppen pnpm docker:down # Stoppen + Volumes löschen (Datenbank-Reset!) pnpm docker:clean ``` --- ## Mana Core Auth Der zentrale Authentifizierungs-Service (Port 3001). ```bash # Im Docker starten (empfohlen) pnpm docker:up:auth # Oder lokal starten cd services/mana-core-auth pnpm start:dev # Datenbank-Migration cd services/mana-core-auth pnpm migration:generate # Migration erstellen pnpm migration:run # Migration ausführen pnpm db:push # Schema direkt pushen (dev) pnpm db:studio # Drizzle Studio öffnen ``` --- ## Chat | App | Port | Befehl | | ------- | ---- | ----------------------- | | Web | 5174 | `pnpm dev:chat:web` | | Backend | 3002 | `pnpm dev:chat:backend` | | Mobile | 8081 | `pnpm dev:chat:mobile` | | Landing | - | `pnpm dev:chat:landing` | ```bash # Web + Backend zusammen starten pnpm dev:chat:app # Alles (Web, Backend, Mobile, Landing) pnpm chat:dev ``` --- ## Picture | App | Port | Befehl | | ------- | ---- | -------------------------- | | Web | 5173 | `pnpm dev:picture:web` | | Backend | - | `pnpm dev:picture:backend` | | Mobile | 8081 | `pnpm dev:picture:mobile` | | Landing | - | `pnpm dev:picture:landing` | ```bash # Web + Backend zusammen starten pnpm dev:picture:app # Alles pnpm picture:dev ``` --- ## Manadeck | App | Port | Befehl | | ------- | ---- | --------------------------- | | Web | - | `pnpm dev:manadeck:web` | | Backend | - | `pnpm dev:manadeck:backend` | | Mobile | 8081 | `pnpm dev:manadeck:mobile` | | Landing | - | `pnpm dev:manadeck:landing` | ```bash # Web + Backend zusammen starten pnpm dev:manadeck:app # Alles pnpm manadeck:dev ``` --- ## Zitare | App | Port | Befehl | | ------- | ---- | ------------------------- | | Web | - | `pnpm dev:zitare:web` | | Backend | - | `pnpm dev:zitare:backend` | | Mobile | 8081 | `pnpm dev:zitare:mobile` | | Landing | - | `pnpm dev:zitare:landing` | ```bash # Web + Backend zusammen starten pnpm dev:zitare:app # Alles pnpm zitare:dev ``` --- ## Presi | App | Port | Befehl | | ------- | ---- | ------------------------ | | Web | - | `pnpm dev:presi:web` | | Backend | - | `pnpm dev:presi:backend` | | Mobile | 8081 | `pnpm dev:presi:mobile` | ```bash # Web + Backend zusammen starten pnpm dev:presi:app # Alles pnpm presi:dev # Datenbank pnpm presi:db:push # Schema pushen pnpm presi:db:studio # Drizzle Studio pnpm presi:db:seed # Seed-Daten ``` --- ## Manacore | App | Port | Befehl | | ------- | ---- | --------------------------- | | Web | - | `pnpm dev:manacore:web` | | Mobile | 8081 | `pnpm dev:manacore:mobile` | | Landing | - | `pnpm dev:manacore:landing` | ```bash # Alles pnpm manacore:dev ``` --- ## Mana Games ```bash # Web + Backend zusammen starten pnpm dev:mana-games:app # Einzeln pnpm dev:mana-games:web pnpm dev:mana-games:backend # Alles pnpm mana-games:dev ``` --- ## Allgemeine Befehle ```bash # Alles bauen pnpm build # Type-Check pnpm type-check # Linting pnpm lint # Formatierung pnpm format # Formatieren pnpm format:check # Nur prüfen # Tests pnpm test # Cache leeren pnpm clean ``` --- ## Stoppen & Aufräumen ### Prozesse stoppen ```bash # Alle Node-Prozesse beenden (macOS/Linux) pkill -f "node" # Spezifischen Port freigeben lsof -ti:3001 | xargs kill -9 # Port 3001 (Auth) lsof -ti:3002 | xargs kill -9 # Port 3002 (Chat Backend) lsof -ti:5174 | xargs kill -9 # Port 5174 (Chat Web) # Turbo Cache leeren pnpm clean ``` ### Docker stoppen ```bash # Container stoppen (Daten bleiben) pnpm docker:down # Container + Volumes löschen (Datenbank-Reset!) pnpm docker:clean ``` ### Komplettes Cleanup ```bash # Alles stoppen und aufräumen pnpm docker:down pkill -f "node" pnpm clean rm -rf node_modules/.cache ``` --- ## Typische Workflows ### Chat-Entwicklung starten ```bash # 1. Infrastruktur starten pnpm docker:up # 2. Auth-Service starten (neues Terminal) cd services/mana-core-auth && pnpm start:dev # 3. Chat App starten (neues Terminal) pnpm dev:chat:app ``` ### Alles mit Docker ```bash # Alles in Docker starten pnpm docker:up:all # Nur Frontend lokal pnpm dev:chat:web ``` ### Nach Code-Änderungen in Shared Packages ```bash # Packages neu bauen pnpm build:packages # Oder spezifisches Package pnpm --filter @manacore/shared-ui build ```