Cardecky — föderierte Spaced-Repetition-App des Vereins mana e.V.
Find a file
Till e3b3a2b478 docs: SMOKE_TEST.md — verifizierter E2E-Lauf gegen lokale Postgres
Phase-3-Verifikation 2026-05-08:
- Drizzle push erfolgreich: 8 Tabellen, 11 Indizes, 6 FKs in
  Schema `cards`
- E2E-Flow durchgespielt: Deck-Create, Card-Create (basic-reverse,
  2 Auto-Reviews), Reviews-Due, FSRS-Grade (state new→learning,
  stability 0→2.3, learning_steps 0→1), Cross-User-Schutz (403),
  Cascade-Delete (Deck→Cards→Reviews alle 0)
- Type-Check + 46 Vitest-Tests grün

Runbook für reproduzierbaren Lauf in docs/SMOKE_TEST.md.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-08 16:43:07 +02:00
.github/workflows Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
apps Phase 3 follow-up: type-check + tests grün, ts-fsrs v5 API 2026-05-08 14:41:04 +02:00
docs docs: SMOKE_TEST.md — verifizierter E2E-Lauf gegen lokale Postgres 2026-05-08 16:43:07 +02:00
infrastructure Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
packages/cards-domain Phase 3 follow-up: type-check + tests grün, ts-fsrs v5 API 2026-05-08 14:41:04 +02:00
.env.example Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
.gitignore Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
.npmrc Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
.prettierrc.json Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
app-manifest.json Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
CLAUDE.md Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
package.json Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
pnpm-lock.yaml Phase 3 follow-up: type-check + tests grün, ts-fsrs v5 API 2026-05-08 14:41:04 +02:00
pnpm-workspace.yaml Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08:41 +02:00
README.md Phase 0+1: Repo-Skelett für Cards-Greenfield 2026-05-08 14:08: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

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 docker:up          # Postgres in Docker
pnpm db:push            # Drizzle-Schema
pnpm dev                # api + web parallel

→ 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).