Zum Inhalt

Lokales Entwicklungssetup

Easy Sale Monorepo

Monorepo für alle Easy Sale Projekte.

Struktur

easySale/
├── apps/
│   ├── erp_system/        # ERP Flutter App
│   └── shop_system/       # Shop Flutter App
├── packages/
│   ├── shared_models/     # Gemeinsame Data Models
│   ├── shared_constants/  # Konstanten & Utils
│   └── shared_firebase/   # Firebase Utilities
├── functions/             # Firebase Cloud Functions
├── firebase.json          # Firebase Konfiguration
├── firestore.rules        # Firestore Security Rules
└── melos.yaml            # Monorepo Config

Setup

1. Melos installieren

dart pub global activate melos

2. Dependencies installieren

melos bootstrap

3. Firebase-Config einrichten (einmalig)

Firebase-Konfigurationsdateien sind nicht im Repo – sie enthalten API-Keys und werden lokal benötigt.

Die echten Werte bekommst du vom Team (z.B. aus 1Password).

# ERP
cp core/apps/erp_system/.firebase.example.json core/apps/erp_system/.firebase.json
# → Werte in core/apps/erp_system/.firebase.json eintragen

# Shop (nur wenn du an der Shop-App arbeitest)
cp core/apps/shop_system/.firebase.example.json core/apps/shop_system/.firebase.json
# → Werte in core/apps/shop_system/.firebase.json eintragen

4. App starten

# ERP
cd core/apps/erp_system
flutter run --dart-define-from-file=.firebase.json --dart-define=ENV=development

# Shop
cd core/apps/shop_system
flutter run --dart-define-from-file=.firebase.json --dart-define=ENV=development

Befehle

Alle Packages analysieren

melos analyze

Alle Tests ausführen

melos test

Code formatieren

melos format

Alle Packages cleanen

melos clean

iOS App bauen

melos build:ios

Web App bauen

melos build:web

Firebase Deployment

Functions deployen

firebase deploy --only functions

Firestore Rules deployen

firebase deploy --only firestore:rules

Alles deployen

firebase deploy

Entwicklung

Neues Shared Model hinzufügen

  1. Model in packages/shared_models/lib/models/ erstellen
  2. In packages/shared_models/lib/shared_models.dart exportieren
  3. melos bootstrap ausführen
  4. In Apps via import 'package:shared_models/shared_models.dart'; nutzen