vagabond-rpg-foundryvtt/README.md
Cal Corum 44dbd00e1b Add development tooling: ESLint, Prettier, Husky, and Quench tests
Set up complete development environment with:
- ESLint with Foundry VTT globals (game, CONFIG, Actor, etc.)
- Prettier for consistent code formatting
- Husky + lint-staged for pre-commit hooks
- Quench test framework structure with sanity checks

Documentation:
- DEVELOPMENT.md with tooling decisions and rationale
- README.md updated with development setup instructions

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-12 14:47:14 -06:00

118 lines
3.2 KiB
Markdown

# Vagabond RPG - Foundry VTT System
A complete Foundry VTT v13 system implementation for **Vagabond RPG** - Pulp Fantasy Roleplaying.
## Features
- Full character sheet matching the official Hero Record design
- Dynamic spell casting system with delivery/duration/damage customization
- Automated skill checks with favor/hinder modifiers
- Variable crit thresholds per skill (modified by class features and perks)
- Complete compendiums: 18 classes, 55+ spells, 90+ perks, ancestries, equipment, bestiary
- NPC/Monster stat blocks with morale system
- Parchment-themed UI with accessibility (color-blind friendly)
## Installation
### From Foundry
1. Open Foundry VTT Setup
2. Navigate to Game Systems
3. Click "Install System"
4. Search for "Vagabond" or paste the manifest URL:
```
https://github.com/calcorum/vagabond-rpg-foundryvtt/releases/latest/download/system.json
```
### Manual Installation
1. Download the latest release from GitHub
2. Extract to `Data/systems/vagabond/`
3. Restart Foundry VTT
## Development Setup
### Prerequisites
- Node.js 18+
- Docker & Docker Compose (for local Foundry instance)
### Quick Start
```bash
# Clone the repository
git clone https://github.com/calcorum/vagabond-rpg-foundryvtt.git
cd vagabond-rpg-foundryvtt
# Install dependencies
npm install
# Start SCSS watcher
npm run watch
# Start local Foundry instance
docker compose up -d
# Access Foundry at http://localhost:30000
```
### Project Structure
```
vagabond-rpg-foundryvtt/
├── module/ # JavaScript modules
│ ├── vagabond.mjs # System entry point
│ ├── documents/ # Actor/Item document classes
│ ├── sheets/ # Sheet classes
│ ├── helpers/ # Utility functions
│ └── dice/ # Roll handling
├── templates/ # Handlebars templates
│ ├── actor/ # Actor sheet templates
│ ├── item/ # Item sheet templates
│ ├── chat/ # Chat message templates
│ └── dialog/ # Roll dialog templates
├── styles/ # SCSS/CSS
│ └── scss/ # SCSS source files
├── lang/ # Localization files
├── packs/ # Compendium data
├── assets/ # Images and icons
├── system.json # System manifest
└── docker-compose.yml # Local dev environment
```
### Building Styles
```bash
# One-time build
npm run build
# Watch for changes
npm run watch
```
### Creating a Release
```bash
npm run release
```
## Contributing
1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
## License
MIT License - see [LICENSE](LICENSE) for details.
Vagabond RPG is a product of its respective copyright holders. This system implementation is a fan project and is not affiliated with or endorsed by the original game creators.
## Acknowledgments
- Vagabond RPG by [Publisher] for the amazing game system
- Foundry VTT community for documentation and examples
- All contributors to this project