Cardecky — föderierte Spaced-Repetition-App des Vereins mana e.V.
Find a file
Till JS c39c42472b
Some checks are pending
CI / validate (push) Waiting to run
feat(web): Lokale KI via @mana/browser-llm — Account-Settings + Init
Phase B-6a (Wordeck) aus mana/docs/MANA_BROWSER_LLM.md. Pattern aus
memoro/pageta übernommen.

- apps/web/package.json: @mana/browser-llm@^0.1.0-alpha.2
- lib/services/localLLMService.svelte.ts: $state-runes-Settings
  (routingMode + allowServerLLM, localStorage-persistent),
  initLocalLLM() konfiguriert ManaLLM mit wordeck-API + devUser.token
- routes/+layout.svelte: initLocalLLM() in onMount
- routes/account/+page.svelte: neue Lokale-KI-Karte im
  CardSurface-Stack mit Capability-Anzeige + Routing-Picker +
  Cloud-Opt-In, eigene Styles im <style>-Block

Server-Backend bleibt unavailable bis User „Cloud erlauben" aktiviert.
AI-Card-Generation kann damit lokal (gratis) oder via Cloud (Mana)
laufen — User entscheidet (Lokal-First per MISSION.md §6).
2026-05-22 19:55:12 +02:00
.github/workflows Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
apps feat(web): Lokale KI via @mana/browser-llm — Account-Settings + Init 2026-05-22 19:55:12 +02:00
devlog devlog: 6 Tage geschrieben (Greenfield → Hardening + Cardecky-Native-Vorbereitung) 2026-05-15 22:23:29 +02:00
docs refactor(big-bang): cards → wordeck im gesamten Code-Layer 2026-05-17 22:39:42 +02:00
infrastructure feat(api): Auto-Apply von Drizzle-Migrations beim Boot 2026-05-20 14:30:06 +02:00
packages/wordeck-domain refactor(big-bang): cards → wordeck im gesamten Code-Layer 2026-05-17 22:39:42 +02:00
scripts feat(web): multiple-choice — explanation-Feld, Edit-Bug-Fix, State-Reset 2026-05-11 18:24:18 +02:00
.env.example Phase 5: Föderations-Endpunkte — Cards ist föderierter Peer 2026-05-08 17:10:35 +02:00
.gitignore feat(landing): Marketing-Astro auf wordeck.com LIVE 2026-05-20 21:38:41 +02:00
.npmrc Phase 9d: Pre-Flight — Protocol-Mirror durch upstream ersetzt 2026-05-08 18:00:56 +02:00
.prettierrc.json Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
app-manifest.json fix(manifest): base_url auf api.wordeck.com — wordeck.com ist Web, hat kein /healthz 2026-05-20 16:54:44 +02:00
CLAUDE.md docs: Cards-Rebrand zu Wordeck angekündigt 2026-05-17 19:54:47 +02:00
package.json refactor(big-bang): cards → wordeck im gesamten Code-Layer 2026-05-17 22:39:42 +02:00
pnpm-lock.yaml feat(web): Lokale KI via @mana/browser-llm — Account-Settings + Init 2026-05-22 19:55:12 +02:00
pnpm-workspace.yaml Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
README.md dev: dev:full + cards-dev-Alias + lokale mana-auth-Pipeline 2026-05-09 12:38:51 +02:00
STATUS.md docs(status): Title cards → Wordeck 2026-05-17 23:25:41 +02:00
tsconfig.base.json Phase 3 follow-up: type-check + tests grün, ts-fsrs v5 API 2026-05-08 14:41:04 +02:00
turbo.json Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00

Cards

Eigenständige Spaced-Repetition-App des Vereins mana e.V.

Cards ist eine föderierte Peer-App im mana-Ökosystem. Sie verwaltet Karteikarten, plant Wiederholungen mit dem FSRS-Algorithmus und empfängt Inhalte aus anderen Verein-Apps (z.B. Zitate aus Memoro, Notizen aus Mana, Web-Schnipsel aus dem Browser-Plugin).

→ Live (geplant): https://cardecky.mana.how

Aktueller Stand und Pickup-Onboarding: STATUS.md.

Stack

  • Frontend: SvelteKit 2 + Svelte 5 (runes-only)
  • Backend: Hono + Bun + Drizzle ORM
  • Datenbank: Postgres mit Schema-Isolation (pgSchema('cards'))
  • Auth: föderiert über mana-auth (EdDSA JWT, JWKS-Cache)
  • Subscriptions: mana-credits (zentral pro Verein-Account)
  • AI-Tools: über mana-mcp Claude Desktop / persona-runner verfügbar
  • i18n: DE / EN / FR / ES / IT
  • Build: Turborepo + pnpm 9

Status

Phase 0 (Repo-Skeleton) — siehe mana/docs/playbooks/CARDS_GREENFIELD.md für den vollständigen Plan.

Lokal entwickeln

pnpm install
pnpm dev:full           # cards docker + mana docker + DB-Push (cards & auth) + dev (cards & mana-auth)

Oder von überall via zsh-Alias: cards-dev.

dev:full greift in ../mana/ (Plattform-Repo): startet mana-postgres, pushed mana-auth-Schema, und startet mana-auth auf :3001 parallel zu cards-api/-web. Damit ist Login lokal komplett testbar (Cookie-Domain localhost, eigener Dev-User in lokaler mana_auth-DB).

Einzelschritte (falls nur Teile gebraucht werden):

pnpm docker:up          # Cards Postgres + MinIO (wartet bis healthy)
pnpm docker:up:auth     # Mana Postgres (wartet bis healthy)
pnpm db:push            # Cards Drizzle-Schema
pnpm db:push:auth       # mana-auth Drizzle-Schema
pnpm dev                # cards api + web parallel (Turbo)
pnpm dev:auth           # mana-auth :3001

→ API auf http://localhost:3081, Web auf http://localhost:3082 (oder Vite-Dev-Default 5173).

Voraussetzung: Mana-Plattform-Stack (mana-auth, evtl. Föderations-Services) muss lokal laufen, sonst greift Auth-Login nicht.

Lizenz

Mana-Verein-intern, MIT (siehe mana/docs/COMPLIANCE.md für Details zur Verein-Lizenzpolitik).