Files
commander-ai-lab/precon-decks/precon-index.json
T
KoalaTrapLord a5fe8cb3fa v23: React + TypeScript SPA migration
Complete frontend rewrite from vanilla HTML/CSS/JS to React 19 + TypeScript + Tailwind CSS v4.

Frontend (frontend/commander-ai-lab-ui/):
- Vite + React 19 + TypeScript + Tailwind CSS v4 + React Router
- 7 pages: BatchSim, Collection, Decks, AutoGen, Simulator, Coach, Training
- Reusable components: Spinner, StatusBadge, CardImage, ManaSymbols, EmptyState
- Full typed API client layer (8 modules matching all backend endpoints)
- Recharts for mana curves, win rate charts, progress bars
- Lucide icons throughout
- Custom dark theme with MTG mana color tokens
- Code splitting (recharts + react in separate chunks)

Backend (lab_api.py):
- SPA-aware static file serving with catch-all for client-side routing
- Fallback to legacy ui/ folder if React dist not built
- Updated startup log with SPA route list

Build system:
- .gitignore added (was missing - removes pyc, db, node_modules, etc.)
- build-full-installer-v2.py: v23 with Node.js check + React build step
- Vite build config with manual chunks for optimal loading

Also includes: V3 deck generator fixes, coach improvements, DeepSeek sim modules
2026-03-12 01:12:02 +00:00

111 lines
3.0 KiB
JSON

[
{
"name": "Elven Empire",
"commander": "Lathril, Blade of the Elves",
"colors": ["B", "G"],
"set": "Kaldheim",
"year": 2021,
"theme": "Elf tribal, token generation, life drain",
"fileName": "Elven_Empire.dck"
},
{
"name": "Undead Unleashed",
"commander": "Wilhelt, the Rotcleaver",
"colors": ["U", "B"],
"set": "Innistrad: Midnight Hunt",
"year": 2021,
"theme": "Zombie tribal, token generation, sacrifice",
"fileName": "Undead_Unleashed.dck"
},
{
"name": "Planar Portal",
"commander": "Prosper, Tome-Bound",
"colors": ["B", "R"],
"set": "Adventures in the Forgotten Realms",
"year": 2021,
"theme": "Exile and cast, treasure generation, impulse draw",
"fileName": "Planar_Portal.dck"
},
{
"name": "Necron Dynasties",
"commander": "Szarekh, the Silent King",
"colors": ["B"],
"set": "Warhammer 40,000",
"year": 2022,
"theme": "Artifact creatures, recursion, reanimation",
"fileName": "Necron_Dynasties.dck"
},
{
"name": "Eldrazi Unbound",
"commander": "Zhulodok, Void Gorger",
"colors": ["C"],
"set": "Commander Masters",
"year": 2023,
"theme": "Eldrazi tribal, colorless ramp, cascade",
"fileName": "Eldrazi_Unbound.dck"
},
{
"name": "Veloci-Ramp-Tor",
"commander": "Pantlaza, Sun-Favored",
"colors": ["R", "G", "W"],
"set": "The Lost Caverns of Ixalan",
"year": 2023,
"theme": "Dinosaur tribal, discover, ramp",
"fileName": "Veloci-Ramp-Tor.dck"
},
{
"name": "Explorers of the Deep",
"commander": "Hakbal of the Surging Soul",
"colors": ["U", "G"],
"set": "The Lost Caverns of Ixalan",
"year": 2023,
"theme": "Merfolk tribal, +1/+1 counters, explore",
"fileName": "Explorers_of_the_Deep.dck"
},
{
"name": "Creative Energy",
"commander": "Satya, Aetherflux Genius",
"colors": ["W", "U", "R"],
"set": "Modern Horizons 3",
"year": 2024,
"theme": "Energy counters, artifact tokens, token copy",
"fileName": "Creative_Energy.dck"
},
{
"name": "Tricky Terrain",
"commander": "Omo, Queen of Vesuva",
"colors": ["W", "U", "G"],
"set": "Modern Horizons 3",
"year": 2024,
"theme": "Land matters, land type shenanigans, everything tribal",
"fileName": "Tricky_Terrain.dck"
},
{
"name": "Scrappy Survivors",
"commander": "Dogmeat, Ever Loyal",
"colors": ["W", "R", "G"],
"set": "Fallout",
"year": 2024,
"theme": "Aura and equipment, junk tokens, power matters",
"fileName": "Scrappy_Survivors.dck"
},
{
"name": "Mutant Menace",
"commander": "The Wise Mothman",
"colors": ["U", "B", "G"],
"set": "Fallout",
"year": 2024,
"theme": "Rad counters, +1/+1 counters, proliferate",
"fileName": "Mutant_Menace.dck"
},
{
"name": "Science!",
"commander": "Dr. Madison Li",
"colors": ["W", "U", "R"],
"set": "Fallout",
"year": 2024,
"theme": "Artifact creatures, fabricate, artifact synergies",
"fileName": "Science.dck"
}
]