Files
dwroller/README.md
alex a4cabbd2b8 Clean rules database and add documentation
- Remove OCR noise, credits, and duplicates from rules-database.json (288→255 rules)
- Add clean_rules.py script for rule cleanup
- Add CLAUDE.md, docs/, and update README with documentation links

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-22 17:35:36 +02:00

95 lines
2.9 KiB
Markdown
Executable File

# Deathwatch Roller
## Project Description
Deathwatch Roller is a React-based application designed to assist players and Game Masters in managing their sessions for the Deathwatch tabletop RPG. It includes features like player management, requisition shop, session tracking, and comprehensive GM tools.
## Features
- **Player Management**: Full CRUD operations for player accounts (GM only)
- **Requisition Shop**: Browse and purchase items with RP
- **Session Tracking**: Track game sessions and player progress
- **GM Kit**: Comprehensive Game Master tools and utilities
- **Bestiary**: Monster and enemy reference
- **Rules Database**: Searchable rules and game mechanics
## Quick Start
### Prerequisites
- Node.js (v18+ recommended)
- npm or yarn
### Installation
1. Clone the repository:
```bash
git clone https://github.com/alexpolo1/dwroller.git
cd dwroller
```
2. Install dependencies:
```bash
npm install
```
3. Start the development server:
```bash
npm start
```
4. Start the backend server:
```bash
npm run server
```
The application will be available at `http://localhost:3000` with the API at `http://localhost:5000`.
### Production Deployment
For production deployment with PM2:
```bash
npm run build
npm run pm2:start
```
## Clean Repository
This repository is configured to exclude:
- Log files (`*.log`)
- Database files (`*.db`, `*.sqlite`)
- Backup files (`*backup*`, `backups/`)
- Temporary files
- PDF files (copyrighted content)
When you clone this repository, the database will be automatically created with the necessary tables on first run.
## GM Features
The application includes a comprehensive Player Management interface available only to Game Masters:
- Create and delete player accounts
- Manage requisition points, experience, and renown
- Reset player passwords
- Bulk operations for XP/RP management
## API Endpoints
- `GET /api/players` - Get all players (requires session)
- `POST /api/players/gm/*` - GM-only endpoints (requires x-gm-secret header)
- `GET /api/shop` - Get shop inventory
- `GET /api/bestiary` - Get bestiary data
## Contribution Guidelines
- Fork the repository
- Create a new branch for your feature or bug fix
- Follow the existing code style and patterns
- Add tests for new functionality
- Submit a pull request with a detailed description
## Documentation
Full documentation is available in the `docs/` directory:
- [Quick Start Guide](./docs/quick-start.md) - Setup and installation
- [User Guide](./docs/user-guide.md) - Features and usage
- [API Documentation](./docs/api.md) - REST API reference
- [Developer Guide](./docs/developer-guide.md) - Contributing to the project
- [Contributing Guide](./docs/contributing.md) - How to contribute
- [Security Guide](./docs/security.md) - Security best practices
- [PM2 Configuration](./docs/pm2.md) - Production deployment
## License
This project is licensed under the MIT License. See the LICENSE file for details.