Files
magik/package.json
masi a07522a189 MAGIK — Commander deck builder
React 19 SPA + node:http/node:sqlite API in one container. Card data is
baked into the image from a Scryfall bulk build, so the runtime never calls
Scryfall. No server-side user state: decks live in the browser and travel in
the share URL, which is why there is no PVC and replicas: 1 is correct.

Adds a README covering the architecture and the reasoning behind it, and
publishes the project skills under .claude/skills/.

Co-Authored-By: Claude Code <noreply@anthropic.com>
2026-10-01 21:12:19 -03:00

31 lines
867 B
JSON

{
"name": "magik",
"version": "1.0.0",
"private": true,
"type": "module",
"description": "MAGIK — a Magic: The Gathering Commander (EDH) deck builder",
"scripts": {
"dev": "concurrently -n web,api -c cyan,magenta \"vite\" \"node --watch server/index.mjs\"",
"build": "vite build",
"preview": "vite preview",
"api": "node server/index.mjs",
"cards:build": "node scripts/build-cards.mjs",
"cards:verify": "node scripts/verify-cards.mjs",
"typecheck": "tsc --noEmit",
"test": "node --test tests/"
},
"dependencies": {
"react": "^19.2.0",
"react-dom": "^19.2.0",
"react-router-dom": "^7.9.1"
},
"devDependencies": {
"@types/react": "^19.2.0",
"@types/react-dom": "^19.2.0",
"@vitejs/plugin-react": "^5.0.0",
"concurrently": "^9.2.0",
"typescript": "^5.9.0",
"vite": "^7.1.0"
}
}