Claude Code Plugins

Community-maintained marketplace

Feedback

project-documentation-system

@jennifer-mckinney/my-skills
1
0

Create comprehensive project documentation including READMEs, contributing guides, ADRs, and architecture documentation

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name project-documentation-system
description Create comprehensive project documentation including READMEs, contributing guides, ADRs, and architecture documentation

Project Documentation System

A comprehensive skill for creating, maintaining, and validating project documentation following industry best practices.

What This Skill Provides

Core Tools

  1. Doc Generator - Create standard documentation from templates
  2. ADR Creator - Document architecture decisions

Templates

  • README.md - Project overview and quick start
  • CONTRIBUTING.md - Contribution guidelines
  • ADR (Architecture Decision Records) - Document key decisions

Reference Documentation

  • Documentation Standards - Best practices and patterns
  • Template Guide - When and how to use each template

When to Use This Skill

Perfect For:

  • Starting new projects with proper documentation
  • Standardizing documentation across multiple projects
  • Creating Architecture Decision Records (ADRs)
  • Writing clear README files

Not For:

  • Code comments (that's inline documentation)
  • API documentation generation from code (use tools like Swagger/JSDoc)

Quick Start Workflows

Workflow 1: Bootstrap New Project Documentation

# Generate complete project documentation
python ~/my-skills/project-documentation-system/scripts/generate_docs.py \
  --project my-awesome-app \
  --type web-app \
  --tech "React, Node.js, PostgreSQL" \
  --all

# This creates:
# - README.md (with proper sections)
# - CONTRIBUTING.md (contribution guidelines)
# - LICENSE (MIT by default)
# - CHANGELOG.md
# - docs/ directory with architecture docs

Workflow 2: Create an Architecture Decision Record

# Document an important architectural decision
python ~/my-skills/project-documentation-system/scripts/create_adr.py \
  --title "Use PostgreSQL for primary database" \
  --status accepted

# Creates: docs/architecture/decisions/0001-use-postgresql.md

📖 Documentation Templates

README Template Structure

Every good README should have:

# Project Name

Brief description (1-2 sentences)

## Features
- Key feature 1
- Key feature 2

## Quick Start
```bash
npm install
npm start

Documentation

Contributing

See CONTRIBUTING.md

License

MIT


### ADR (Architecture Decision Record) Template

```markdown
# ADR-000X: [Title]

**Status:** [Proposed | Accepted | Deprecated]
**Date:** YYYY-MM-DD

## Context
What is the issue we're trying to solve?

## Decision
What did we decide to do?

## Consequences
What are the positive and negative consequences?

Documentation Types Reference

1. README.md

Purpose: Project overview and quick start Must include:

  • Project description
  • Installation instructions
  • Quick start guide
  • Link to detailed docs

2. CONTRIBUTING.md

Purpose: Guide for contributors Must include:

  • Development setup
  • Pull request process
  • Coding standards

3. Architecture Decision Records (ADRs)

Purpose: Document important technical decisions When to create:

  • Choosing technologies (database, framework)
  • Major architectural patterns
  • Security decisions

Documentation Quality Checklist

Essentials (Required)

  • README.md exists and is complete
  • Installation instructions are clear
  • All code examples work
  • Links are valid
  • License is specified

Best Practices (Recommended)

  • CONTRIBUTING.md exists
  • Architecture is documented (ADRs)
  • Changelog is maintained
  • Examples cover common use cases

Real-World Examples

Example 1: Quick Project Setup

cd my-new-project

# Bootstrap all documentation
python ~/my-skills/project-documentation-system/scripts/generate_docs.py \
  --project my-new-project \
  --type library \
  --tech "Python, FastAPI" \
  --all

# Result:
# ├── README.md
# ├── CONTRIBUTING.md
# ├── LICENSE
# ├── CHANGELOG.md
# └── docs/
#     └── architecture/
#         └── decisions/

Example 2: Document a Technical Decision

# Should we use Redis or Memcached?
python create_adr.py \
  --title "Use Redis for caching" \
  --status proposed

Common Documentation Problems & Solutions

Problem 1: Outdated Documentation

Symptom: Documentation doesn't match current code

Solutions:

  • Add doc validation to CI/CD
  • Review docs with every PR
  • Use automated tools to detect drift

Problem 2: Missing Context

Symptom: Readers don't understand why things are the way they are

Solutions:

  • Create ADRs for major decisions
  • Add "Why?" sections to docs
  • Document trade-offs

Template Usage Guide

When to Use Each Template

Template Use When Don't Use When
README Always (every project) Never skip this
CONTRIBUTING Open source or team projects Solo, private projects
ADR Making architectural decisions Routine changes

Pro Tips

  1. Write docs as you code: Don't leave it until the end
  2. Keep it simple: Clear is better than clever
  3. Use examples: Show, don't just tell
  4. Test code examples: Broken examples break trust
  5. Update changelog: Users need to know what changed

Version: 1.0.0
Last Updated: October 2025