Standards and guidelines for organizing, structuring, and maintaining documentation in the PRPM repository - ensures consistency across user docs, development docs, and internal references
Install via CLI
openskills install pr-pm/prpm---
name: documentation-standards
description: Standards and guidelines for organizing, structuring, and maintaining documentation in the PRPM repository - ensures consistency across user docs, development docs, and internal references
---
# PRPM Documentation Standards
## Documentation Organization
### Internal Documentation (development/docs/)
**Purpose:** Documentation for developers working on PRPM itself
**Location:** `development/docs/`
**Files:**
- `GITHUB_WORKFLOWS.md` - GitHub Actions workflows reference
- `PUBLISHING.md` - NPM package publishing process and order
- `DEVELOPMENT.md` - Development setup, environment, and workflows
- `DOCKER.md` - Docker setup, services, and troubleshooting
**Audience:** PRPM contributors, maintainers, CI/CD systems
---
### User-Facing Documentation (docs/)
**Purpose:** Documentation for PRPM users and package authors
**Location:** `docs/` (at project root)
**Files:**
- User guides
- API documentation
- Package authoring guides
- CLI command reference
- Examples and tutorials
**Audience:** PRPM end users, package authors, integrators
---
### Project-Level Documentation (root)
**Purpose:** Standard project files that belong at repository root
**Location:** Project root `/`
**Files:**
- `README.md` - Project overview, quick start, installation
- `CONTRIBUTING.md` - Contribution guidelines
- `CHANGELOG.md` - Version history and changes
- `LICENSE` - License information
- `ROADMAP.md` - Project roadmap and future plans
**Audience:** Everyone (first impression)
---
### Claude Skills (.claude/skills/)
**Purpose:** Knowledge base and reference materials for AI assistants
**Location:** `.claude/skills/`
**Files:**
- `postgres-migrations-skill.md` - PostgreSQL migrations guidance
- `pulumi-troubleshooting-skill.md` - Pulumi troubleshooting
- `NEW_SKILLS.md` - How to create new skills
- `documentation-standards.md` - This file
**Subdirectories:**
- `prpm-development/` - PRPM-specific development knowledge
- `self-improving/` - Self-improvement patterns
- `thoroughness/` - Thoroughness and quality guidelines
**Audience:** AI assistants (Claude, etc.)
---
## Rules for Documentation Placement
### When to use development/docs/
✅ GitHub Actions workflows and CI/CD
✅ Internal build/release processes
✅ Development environment setup
✅ Architecture decision records
✅ Internal troubleshooting guides
✅ Database schema documentation
✅ Infrastructure documentation
❌ User-facing tutorials
❌ CLI usage guides
❌ API reference for end users
### When to use docs/
✅ User guides and tutorials
✅ CLI command reference
✅ Package authoring guides
✅ API documentation for users
✅ Integration examples
✅ FAQ for users
❌ Internal development workflows
❌ CI/CD documentation
❌ Build/release processes
### When to use .claude/skills/
✅ Specialized knowledge for AI assistants
✅ Domain-specific best practices
✅ Troubleshooting patterns
✅ Code review guidelines
✅ Project-specific conventions
❌ General documentation
❌ User guides
❌ API references
---
## Documentation Standards
### Markdown Files
- Use clear, descriptive filenames (kebab-case)
- Include table of contents for docs > 200 lines
- Use proper heading hierarchy (# → ## → ###)
- Include code examples with syntax highlighting
- Add frontmatter if using a static site generator
### Example Structure
```markdown
# Title
Brief description (1-2 sentences)
## Table of Contents
- [Section 1](#section-1)
- [Section 2](#section-2)
## Section 1
Content...
### Subsection 1.1
Details...
## Examples
\`\`\`bash
# Example command
prpm install @username/package-name
\`\`\`
## See Also
- [Related Doc](./related.md)
```
### Cross-References
- Use relative paths for links
- Keep links within same category when possible
- Update links when moving files
**Internal → Internal:**
```markdown
See [Publishing Guide](./PUBLISHING.md)
```
**Internal → User:**
```markdown
See [User Guide](../../docs/user-guide.md)
```
---
## Migration Checklist
When reorganizing documentation:
1. ✅ Move file to correct location
2. ✅ Update all references to moved file
3. ✅ Update README.md links if needed
4. ✅ Update .gitignore if needed
5. ✅ Test that all links work
6. ✅ Commit with clear message explaining move
---
## Package-Specific Documentation
Each package should have its own README:
```
packages/
├── cli/
│ └── README.md # CLI package overview
├── registry/
│ └── README.md # Registry server docs
├── registry-client/
│ └── README.md # Client library docs
├── types/
│ └── README.md # Type definitions docs
└── webapp/
└── README.md # WebApp docs
```
---
## Maintenance
### Regular Reviews
- Quarterly review of docs/ for accuracy
- Remove outdated documentation
- Update examples to use latest version
- Check for broken links
### When Adding Features
- Update relevant user docs in `docs/`
- Update internal docs in `development/docs/` if needed
- Add examples
- Update CHANGELOG.md
### When Deprecating Features
- Add deprecation notice to docs
- Provide migration guide
- Keep docs until feature is removed
- Update CHANGELOG.md
---
## Quick Reference
| Documentation Type | Location | Audience | Examples |
|--------------------|----------|----------|----------|
| Internal Dev | `development/docs/` | Contributors | CI/CD, publishing |
| User-Facing | `docs/` | Users | Guides, tutorials |
| Project Root | `/` | Everyone | README, LICENSE |
| AI Skills | `.claude/skills/` | AI assistants | Troubleshooting |
| Package Docs | `packages/*/README.md` | Package users | API reference |
---
## Tools
### Documentation Generators
- **TypeDoc** - For TypeScript API docs (future)
- **VitePress** or **Docusaurus** - For docs/ site (future)
### Linting
```bash
# Check markdown
markdownlint docs/
# Check links
markdown-link-check docs/**/*.md
```
### Building Docs Site (Future)
```bash
cd docs/
npm run build
```
---
## Examples
### Good Documentation Structure
```
prpm/
├── README.md # Project overview
├── CONTRIBUTING.md # How to contribute
├── CHANGELOG.md # Version history
├── ROADMAP.md # Future plans
├── development/
│ └── docs/
│ ├── GITHUB_WORKFLOWS.md # CI/CD reference
│ ├── PUBLISHING.md # Release process
│ ├── DEVELOPMENT.md # Dev setup
│ └── DOCKER.md # Services setup
├── docs/
│ ├── getting-started.md # User onboarding
│ ├── cli-reference.md # Command reference
│ ├── package-authoring.md # Creating packages
│ └── api/
│ └── registry-client.md # API docs
└── .claude/
└── skills/
├── documentation-standards.md
├── postgres-migrations-skill.md
└── pulumi-troubleshooting-skill.md
```
### Bad Documentation Structure ❌
```
prpm/
├── README.md
├── WORKFLOWS.md # Should be in development/docs/
├── USER_GUIDE.md # Should be in docs/
├── dev-setup.md # Should be in development/docs/
└── troubleshooting.md # Unclear audience/location
```
---
## Version
**Last Updated:** 2025-10-21
**Applies To:** PRPM v2+
**Review Date:** 2026-01-21
No comments yet. Be the first to comment!