Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Architecture

This section is for the technical structure behind TTRPG Forge: crate boundaries, domain modeling, API design, storage concerns, and query behavior.

Start here if you need to understand how the project is assembled before changing code.

Reading Order

  1. Architecture Overview
  2. Recommended Rust Workspace
  3. Crate Boundaries
  4. Domain Model
  5. API Design
  6. Search and Query Design

Design Bias

The core architecture should keep narrative concepts separate from delivery details.

That means:

  • domain rules belong in domain/application crates
  • persistence details belong behind storage traits
  • HTTP details belong in the API crate
  • frontend workflows should present user questions instead of internal table names
  • rules systems should attach around the core model instead of redefining it