Warhammer 40K Rogue Trader campaign management tool
- TypeScript 83.5%
- Python 9.3%
- CSS 3.2%
- JavaScript 2%
- Shell 1%
- Other 1%
- Add character_augments table and Augment/AugmentSlot types - Add augment CRUD to backend characterService - Add inline augments editing to CharacterSheet - Add augments step to character creation flow - Wire augments save in CharacterDetailPage - Fix frontend Dockerfile (nginx permissions, healthcheck IPv4) - Fix backend Dockerfile healthcheck (use PORT env) - Upgrade eslint-plugin-react-hooks to v5 |
||
|---|---|---|
| backend | ||
| certbot | ||
| Concept | ||
| docker | ||
| docs | ||
| frontend | ||
| mcp-server | ||
| scripts | ||
| shared | ||
| ssl | ||
| .dockerignore | ||
| .env.example | ||
| .gitignore | ||
| Caddyfile | ||
| DEPLOYMENT.md | ||
| docker-compose.prod.yml | ||
| docker-compose.sqlite.yml | ||
| docker-compose.yml | ||
| docker-compose.yml.bak | ||
| docker-compose.yml.example | ||
| LICENSE | ||
| nginx-prod.conf | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
WH40K Rogue Trader Campaign Manager
A comprehensive campaign management tool for Warhammer 40,000 Rogue Trader tabletop RPG sessions.
Overview
This tool helps Game Masters and players manage their Warhammer 40K Rogue Trader campaigns, including character sheets, ship management, crew rosters, trade goods, exploration tracking, and more.
Features
Core Management
- Character Sheets - Detailed Rogue Trader character creation and management
- Ship Management - Track your voidship's stats, components, and upgrades
- Crew Roster - Manage your crew, their skills, and assignments
- Inventory & Cargo - Track trade goods, equipment, and ship cargo
- Finance Tracking - Manage profits, expenses, and trade profits
Campaign Tools
- Exploration Log - Record explorations of the Expanse
- Session Notes - Track session recaps and important events
- Contact Network - Manage NPCs, patrons, and contacts
- Faction Reputation - Track relationships with Imperial organizations
Game Mechanics
- Skill Tests - Automated skill check rolling with modifiers
- Combat Tracker - Initiative and combat management
- Psychic Phenomena - Track warp and psychic events
- Mutation Tracking - Handle the perils of the warp
Project Structure
wh40-rogue-trader/
├── backend/ # Backend API (Node.js/Express or Python/FastAPI)
│ ├── src/
│ │ ├── controllers/
│ │ ├── models/
│ │ ├── routes/
│ │ ├── services/
│ │ └── config/
│ └── package.json
├── frontend/ # Frontend application (React/Vite)
│ ├── public/
│ └── src/
│ ├── components/
│ ├── pages/
│ ├── hooks/
│ ├── store/
│ ├── utils/
│ └── App.tsx
├── shared/ # Shared types and utilities
│ └── src/
│ ├── types/
│ └── constants/
├── docs/ # Documentation and reference materials
│ ├── rules/
│ └── examples/
├── .gitignore
└── README.md
Getting Started
Prerequisites
- Node.js 20+ (for frontend/backend)
- Python 3.10+ (optional, for MCP server)
- PostgreSQL (for database)
- Docker & Docker Compose (for containerized deployment)
Installation
-
Clone the repository:
git clone http://192.168.50.213:4000/nasandre/wh40-rogue-trader.git cd wh40-rogue-trader -
Install dependencies:
# For Node.js backend cd backend && npm install # For React frontend cd ../frontend && npm install -
Configure environment variables:
cp .env.example .env # Edit .env with your configuration -
Run the application:
# Development mode docker-compose up -d # Or run individually cd backend && npm run dev cd ../frontend && npm run dev
API Documentation
The backend provides a RESTful API for managing all campaign data. See API Documentation for details.
Data Model
Character
- Profile (Name, Wounds, Fate Points, etc.)
- Characteristics (WS, BS, S, T, Ag, Int, Per, WP, Fel)
- Skills and Talents
- Psychic Powers (if Psyker)
- Equipment and Gear
Voidship
- Ship Class and Statistics
- Components (Weapons, Armour, Sensors, etc.)
- Crew Quarters and Capacity
- Cargo Holds and Storage
- Ship's Reputation and History
Campaign
- Timeline of Events
- Explored Systems
- Trade Routes
- Faction Relationships
- Session Logs
Contributing
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- Warhammer 40,000 and Rogue Trader are trademarks of Games Workshop
- This is a fan project and not officially affiliated with Games Workshop