Aus Quellcode ausführen (Entwicklung)
Diese Anleitung führt dich durch die Einrichtung einer lokalen Entwicklungsumgebung, um Jotter auszuführen und zu modifizieren.
Voraussetzungen
Stelle sicher, dass die folgenden Programme auf deinem System installiert sind:
- Python (v3.12 oder höher) und pip
- Node.js (v20 oder höher empfohlen) und npm
- Eine Terminal-Shell (Bash, Zsh, PowerShell)
Einrichtungsschritte
1. Repository klonen
git clone https://github.com/simon123h/jotter.git
cd jotter2. Abhängigkeiten installieren
Verwende das Workspace-Skript, um alle Node- und Python-Abhängigkeiten im Entwicklungsmodus zu installieren:
npm run install:allOder manuell:
pip install -e .[dev]
npm install
cd apps/web && npm install && cd ../..Im Entwicklungsmodus ausführen
Um sowohl das Python-FastAPI-Backend als auch das Vue 3-Frontend mit Hot-Reloading gleichzeitig auszuführen:
npm run devOder in separaten Terminals:
# Terminal 1: Python Backend
npm run dev:backend
# oder: python3 run.py
# Terminal 2: Frontend
npm run dev:web
# oder: cd apps/web && npm run devDas Frontend ist unter http://localhost:5173 erreichbar (leitet /api an das Python-Backend auf Port 58271 weiter).
Tests ausführen
# Alle Tests ausführen (Pytest + Vitest)
npm run test
# Nur Backend-Tests (Pytest)
npm run test:backend
# Nur Frontend-Tests (Vitest)
npm run test:web
# Playwright E2E-Tests
cd apps/web && npx playwright testAndroid App Entwicklung & Lokale Vorschau
Die mobile App (apps/mobile/) basiert auf Capacitor und nutzt eine lokale Storage-Engine (Dexie.js IndexedDB-Cache + direkter .md-Dateizugriff).
1. Android-Projekt bauen
# Web-Bundle bauen und mit dem nativen Capacitor-Projekt synchronisieren
cd apps/mobile && npm run cap:sync
# (Optional) Release-APK lokal via Gradle kompilieren (oder im Repository-Root: npm run build:apk)
cd android && ./gradlew assembleRelease2. Lokale Vorschau auf Linux / Desktop
Die Android-App kann ohne echtes Smartphone auf drei Wegen lokal getestet und vorgeschaut werden:
Option A: Browser Mobile DevTools (Sofort, ohne Installation)
- App starten:
cd apps/mobile && npm run dev - Entwicklertools in Chrome/Firefox öffnen (
F12),Strg + Umschalt + Mdrücken, um die Geräteleiste / Mobile Ansicht zu aktivieren (z. B. Pixel 7). - Im Browser liegt der Vault im Browser-Speicher statt im Dokumente-Ordner des Telefons. Das genügt, um Bildschirme und Gesten auszuprobieren.
Option B: Waydroid (Nativer Linux-Container – Schnellste native Ausführung)
Unter Linux mit Wayland führt Waydroid Android in einem LXC-Container mit voller GPU-Beschleunigung aus:
# Waydroid-Sitzung starten
waydroid session start
# Gebautes APK installieren
waydroid app install apps/mobile/android/app/build/outputs/apk/release/app-release-unsigned.apkOption C: Android Studio & Emulator
# Projekt in Android Studio öffnen
cd apps/mobile && npx cap open androidIn Android Studio auf Run (▶) klicken oder ein Virtual Device (AVD) starten. Das .apk kann auch per Drag & Drop direkt auf das Emulator-Fenster gezogen werden.
