Some checks are pending
CI / validate (push) Waiting to run
L-1f Phase B von mana/docs/playbooks/LOCAL_FIRST_LOGIN_OPTIONAL.md: apps/web: - neue Foundation: lib/sync.svelte.ts mit @mana/event-sync v0.5.0, Vault-Crypto via createMasterKeyProviderFromVault, anonymous-Mode aktiv (getToken returnt null bis Login) - lib/api/event-adapters.ts: konvertiert WordeckDeckState/CardState/ ReviewState (camelCase, event-sourced) → Deck/Card/Review (snake_case, @wordeck/domain), stable aggregate-id-Helpers - lib/api/event-builder.ts: baut EventEnvelope mit aktuellem attributedToUserId (real-user-id wenn signed-in, anon:<ulid> sonst) - lib/api/decks.ts: list/get/create/update/delete/archive auf event-sync. Marketplace-Source, duplicate, AI-generate bleiben HTTP (cross-user bzw. Tier-gated, Server-AI-Calls) - lib/api/cards.ts: list/get/create/update/delete auf event-sync, Review-Init-Events beim CardCreate (basic-reverse → 2 Reviews), content_hash client-side via @wordeck/domain - lib/api/reviews.ts: listDueReviews via aggregateList, gradeReview rechnet FSRS client-side via @wordeck/domain.gradeReview, emittet ReviewGraded mit prevSnapshotJson für undo - routes/+page.svelte: kein redirect-to-/login mehr — direkt /decks (anonymous-Mode trägt's) - routes/auth/callback: ruft onSignedIn(realUserId) für anonyme→real Re-Tagging der Outbox + EventLog shared-schemas/wordeck: - CardType-Korrektur: 'type-in' → 'typing' (matched @wordeck/domain CardType-Schema). Schema-Hash neu: da67d23cf100…, re-published auf sync2.mana.how + @mana/shared-schemas@0.1.10 Verbleibend für L-1f Phase C (nächste Session): - Wordeck-API server-seitige Routes auf Read-Only-Projektion umstellen (heute noch Read+Write, wir lassen es da bis wir sicher sind dass event-sync stabil läuft) - /api/v1/public/feed Endpoint (oder Marketplace-Alias) - DSE-Update (lokale Speicherung, anonyme Nutzung erwähnen) - Live-Smoke auf wordeck.com Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
50 lines
1.5 KiB
JSON
50 lines
1.5 KiB
JSON
{
|
|
"name": "@wordeck/web",
|
|
"version": "0.0.0",
|
|
"private": true,
|
|
"type": "module",
|
|
"description": "Cards-Web — SvelteKit 2 + Svelte 5 Frontend für cardecky.mana.how.",
|
|
"scripts": {
|
|
"dev": "vite dev --port 3082 --host",
|
|
"build": "vite build",
|
|
"preview": "vite preview",
|
|
"check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
|
"type-check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
|
|
"test": "vitest run --passWithNoTests",
|
|
"lint": "echo 'lint configured later (eslint flat-config)'",
|
|
"clean": "rm -rf .svelte-kit build .turbo"
|
|
},
|
|
"dependencies": {
|
|
"@mana/event-kit": "^0.1.0",
|
|
"@mana/event-sync": "^0.5.0",
|
|
"@mana/shared-auth-sso": "0.1.0-alpha.3",
|
|
"@mana/shared-icons": "^1.0.0",
|
|
"@mana/shared-pwa": "0.1.0-alpha.5",
|
|
"@mana/shared-schemas": "^0.1.10",
|
|
"@mana/shared-ui-2": "^0.1.0",
|
|
"@mana/themes": "^0.1.0",
|
|
"@vite-pwa/sveltekit": "^1.1.0",
|
|
"@wordeck/domain": "workspace:*",
|
|
"dompurify": "^3.4.2",
|
|
"jszip": "^3.10.1",
|
|
"marked": "^18.0.3",
|
|
"sql.js": "^1.14.1",
|
|
"ulid": "^3.0.2",
|
|
"workbox-window": "^7.4.1"
|
|
},
|
|
"devDependencies": {
|
|
"@sveltejs/adapter-node": "^5.2.0",
|
|
"@sveltejs/kit": "^2.8.0",
|
|
"@sveltejs/vite-plugin-svelte": "^4.0.0",
|
|
"@tailwindcss/vite": "^4.2.4",
|
|
"@types/dompurify": "^3.2.0",
|
|
"@types/jszip": "^3.4.1",
|
|
"@types/sql.js": "^1.4.11",
|
|
"sharp": "^0.34.5",
|
|
"svelte": "^5.0.0",
|
|
"svelte-check": "^4.0.0",
|
|
"tailwindcss": "^4.2.4",
|
|
"vite": "^5.4.0",
|
|
"vitest": "^2.1.0"
|
|
}
|
|
}
|