BMAD-METHOD/docs/README.md

219 lines
6.5 KiB
Markdown

# BMad Method Documentation
This directory contains the source files for the BMad Method Documentation website, built with MkDocs and the Material theme.
## Quick Start
### Local Development
1. **Install MkDocs and dependencies**:
```bash
pip install mkdocs-material mkdocs-minify-plugin PyYAML requests
```
2. **Serve documentation locally**:
```bash
mkdocs serve
```
3. **View documentation**: Open [http://localhost:8000](http://localhost:8000)
### Build Static Site
```bash
mkdocs build
```
The built site will be in the `site/` directory.
## Documentation Structure
```
docs/
├── index.md # Homepage
├── getting-started/ # New user onboarding
│ ├── index.md # Getting started overview
│ ├── installation.md # Installation guide
│ ├── verification.md # Setup verification
│ └── first-project.md # First project tutorial
├── commands/ # Command reference
│ ├── index.md # Commands overview
│ ├── orchestrator.md # Core orchestrator commands
│ ├── agents.md # Agent-specific commands
│ └── quick-reference.md # Auto-generated command reference
├── workflows/ # Workflows and best practices
│ ├── index.md # Workflow overview
│ ├── mvp-development.md # Complete MVP example
│ ├── persona-switching.md # Using different personas
│ └── best-practices.md # Quality and methodology
├── examples/ # Real-world examples
│ ├── index.md # Examples overview
│ ├── web-app.md # Building a web application
│ ├── api-service.md # Creating an API service
│ └── troubleshooting.md # Common issues and solutions
├── reference/ # Technical reference
│ ├── index.md # Reference overview
│ ├── personas.md # Auto-generated personas reference
│ ├── tasks.md # Available tasks
│ ├── quality-framework.md # Quality standards
│ └── memory-system.md # Memory and learning features
└── assets/ # Images, videos, and other assets
├── images/
└── videos/
```
## Automation Scripts
### Command Synchronization
Automatically generates command reference documentation from the BMad system:
```bash
python scripts/sync-commands.py
```
**Generated files:**
- `docs/commands/quick-reference.md` - Complete command reference
- `docs/reference/personas.md` - Available agents and their tasks
### Content Validation
Validates documentation for common issues:
```bash
python scripts/validate-content.py
```
**Checks performed:**
- Markdown syntax validation
- Internal link validation
- External link validation (when not in CI)
- Content standards compliance
- MkDocs configuration validation
## Writing Guidelines
### Content Standards
- **Scannable**: Use headings, bullets, and clear structure
- **Action-oriented**: Start with what users can do
- **Examples-first**: Show, then explain
- **Progressive detail**: Essential info first, details via links
- **Mobile-friendly**: Short paragraphs, clear formatting
### Markdown Conventions
- **Headings**: Use proper hierarchy (H1 → H2 → H3)
- **Code blocks**: Always specify language (```bash, ```python, etc.)
- **Links**: Use descriptive text, validate all links
- **Line length**: Keep lines under 120 characters for readability
- **Images**: Include alt text, optimize for web
### File Naming
- Use lowercase with hyphens: `getting-started.md`
- Be descriptive: `mvp-development.md` not `example1.md`
- Match URL structure: `workflows/best-practices.md``/workflows/best-practices/`
## Contributing
### Adding New Content
1. **Create the markdown file** in the appropriate directory
2. **Add to navigation** in `mkdocs.yml`
3. **Run validation** to check for issues:
```bash
python scripts/validate-content.py
```
4. **Test locally** with `mkdocs serve`
5. **Submit pull request**
### Updating Command Reference
Command references are auto-generated from the BMad system. To update:
1. **Modify source files** in `bmad-agent/` directory
2. **Run sync script**:
```bash
python scripts/sync-commands.py
```
3. **Review generated files** and commit changes
### Content Review Process
1. **Validation**: All content must pass validation checks
2. **Testing**: Test all examples and installation steps
3. **Review**: Peer review for accuracy and clarity
4. **Deployment**: Automatic deployment via GitHub Actions
## Deployment
Documentation is automatically deployed to GitHub Pages when changes are pushed to the main branch.
### Manual Deployment
If needed, you can deploy manually:
```bash
mkdocs gh-deploy
```
### GitHub Actions
The repository includes GitHub Actions workflows for:
- **docs-deploy.yml**: Automatic deployment to GitHub Pages
- **docs-validate.yml**: Content validation on pull requests
## Troubleshooting
### Common Issues
**MkDocs won't start**:
```bash
pip install --upgrade mkdocs-material
```
**Validation errors**:
- Check the specific error message
- Run `python scripts/validate-content.py` for details
- Fix issues and re-validate
**Missing dependencies**:
```bash
pip install -r requirements.txt
```
**Build errors**:
- Check `mkdocs.yml` syntax
- Ensure all referenced files exist
- Run `mkdocs build --strict` for detailed errors
### Getting Help
1. Check existing [GitHub Issues](https://github.com/bmadcode/BMAD-METHOD/issues)
2. Review validation output for specific guidance
3. Test with a fresh MkDocs installation
4. Create a new issue with error details and system information
## Performance
The documentation is optimized for:
- **Load time**: <1 second for static content
- **Search**: <100ms response time (client-side)
- **Mobile**: Excellent performance on all devices
- **SEO**: Static HTML with proper metadata
## Architecture
- **Static site generator**: MkDocs with Material theme
- **Hosting**: GitHub Pages with global CDN
- **Search**: Client-side search with offline capability
- **Analytics**: Privacy-focused analytics (when configured)
- **Content**: Markdown files with front matter
- **Automation**: Python scripts for validation and sync
---
For more information about BMad Method, visit the [main documentation](index.md) or the [GitHub repository](https://github.com/bmadcode/BMAD-METHOD).