A chess roguelite engine with CLI-first architecture. Procedurally generated chessboards, dynamic rules, and permadeath progression—exploring the convergence of chess mechanics and roguelike design.
Current Status: Early playable foundation. Core board/piece/action logic and a minimal CLI loop (new, show, play) are implemented, with roadmap phases continuing in incremental slices.
For detailed setup instructions, see Local Development Setup Guide.
# Build the project
dotnet build
# Run the CLI
dotnet run --project src/MFBC.Cli
# Run tests
dotnet testsrc/MFBC.Core/— Core game logic and domain models (pure, testable)src/MFBC.Cli/— CLI interface and presentation layertests/MFBC.Core.Tests/— Unit tests for core logicdocs/architecture/— Architecture decisions and system designdocs/decisions/— Architectural decision records (ADRs)
- New logic requires tests in
MFBC.Core.Tests - Layering rule:
MFBC.Coremust remain independent;MFBC.Clidepends onMFBC.Core - Architectural decisions go in
docs/decisions/— see ADR guide - Design decisions use the ADR process and template
- English-only identifiers and comments
See .github/copilot-instructions.md for agent guidance.
For AI agents working on MFBC, see AI Prompt Crafting Guidelines for best practices on crafting high-quality prompts with grounding, verification checkpoints, and hallucination prevention.
The architecture roadmap for the next 2-3 releases is maintained in docs/ROADMAP.md.
Current directional phases:
- Phase 0: Scaffold
- Phase 1: Core Rules
- Phase 2: Procedural Generation
For architectural context, see architecture overview and decision records.
Before implementation, comprehensive technical decisions have been documented:
- Core Domain Model — Board, tiles, pieces, and invariants
- Core ↔ CLI Contract — API surface and responsibilities
- Move Representation — Action model and validation flow
- Rule Engine Design — Phased execution and rule categories
- Events, Effects, and Mutation — State change model
- RNG and Determinism — Seed strategy and replay
- Serialization — Save/load and versioning
- Testing Strategy — Test categories and determinism guarantees
- Dependency Boundaries — Layering enforcement
Contributions are welcome! See CONTRIBUTING.md for guidelines.
Jira Conventions: See Jira Conventions & Process Guide for issue types, workflow, and best practices for creating and managing work items.
Jira Templates: See Jira Work Item Templates for copy-paste-ready templates (Epic, Feature, Task, Subtask) with filled examples.
Jira Board: https://jonv11.atlassian.net/jira/software/projects/MFBC/boards/1
See Dependency Updates for information about dependency updates and vulnerability handling.
MIT — See LICENSE for details.