49 lines
1.6 KiB
Markdown
49 lines
1.6 KiB
Markdown
# slaywithfriends
|
|
|
|
multiplayer browser version of slay the spire, played with friends.
|
|
|
|
## status
|
|
|
|
building first playable slice: single ironclad combat encounter.
|
|
see `docs/plans/2026-02-23-single-combat-plan.md` for implementation plan.
|
|
|
|
## tech
|
|
|
|
- bun (serve + test), biome (lint/format, 4 spaces)
|
|
- vanilla js, es modules, no framework, no build step
|
|
- html/css rendering (no canvas)
|
|
- client-only for now, multiplayer later
|
|
|
|
## project structure
|
|
|
|
- `src/` - game engine modules (state, effects, combat, render)
|
|
- `data/` - card/enemy/potion/relic json databases
|
|
- `assets/` - video game card images (per-character dirs)
|
|
- `StS_BG_assets/` - board game assets (playmats, boards, boss art, tokens)
|
|
- `docs/` - rules, plans, design docs
|
|
- `docs/rules.md` - index to rules docs
|
|
- `docs/plans/` - design docs and implementation plans
|
|
|
|
## rules
|
|
|
|
the board game rulebook is the mechanical reference point. the video game
|
|
assets give us card art. goal is a browser-based multiplayer experience
|
|
where friends can play together — not a direct port of either version,
|
|
but something that captures the core deckbuilding + encounter loop in a
|
|
way that works for a group.
|
|
|
|
- `docs/rules-canon.md` - canonical board game rules
|
|
- `docs/rules-web-mvp.md` - what we're implementing
|
|
- `docs/rules-web-delta.md` - known differences from canon
|
|
|
|
## card data
|
|
|
|
board game card values are source of truth (scaled down from video game).
|
|
card data lives in `data/cards.json`. the video game wiki (wiki.gg) has
|
|
structured data as a secondary reference but values differ.
|
|
|
|
## commands
|
|
|
|
- `bun run dev` - start dev server
|
|
- `bun run check` - biome check + tests
|
|
- `bun test` - run tests
|