Documentation Standards & Templates

This guide provides standards, templates, and best practices for contributing to the Blueberry IDP documentation.

📋 Documentation Standards

Writing Style

Voice and Tone
- Use clear, concise language
- Write in active voice
- Use second person ("you") for instructions
- Maintain a helpful, professional tone
- Avoid jargon without explanation

Structure
- Use descriptive headings (H1-H6)
- Break up long sections with subheadings
- Use bullet points and numbered lists
- Include code examples where relevant
- Add cross-references to related documents

Technical Writing
- Define acronyms on first use
- Use consistent terminology
- Include prerequisites and assumptions
- Provide context for commands and code
- Test all examples before publishing

Formatting Conventions

Markdown Standards
- Use # for headings (not === or ---)
- Use backticks for inline code
- Use triple backticks for code blocks
- Use **bold** for emphasis
- Use *italic* for light emphasis

Code Blocks

```bash
# Always specify the language
kubectl get pods -n blueberry
# Include comments for complex configurations
apiVersion: v1
kind: ConfigMap
metadata:
  name: app-config

Links
- Use descriptive link text: Environment API
- Not: Click here
- Use relative paths for internal links
- Include external link indicators where helpful

Images and Diagrams
- Use descriptive alt text
- Keep images under 1MB
- Use SVG for diagrams when possible and allow user to zoom in
- Include source files for complex diagrams

📚 Document Templates

API Documentation Template

# [API Name] API

Brief description of the API's purpose and functionality.

## Overview

- What the API does
- Key features
- Use cases

## Authentication

Authentication requirements and examples.

## Endpoints

### [Endpoint Name]

Brief description of what this endpoint does.

```http
METHOD /api/path

Request

Parameters
| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| param1 | string | Yes | Parameter description |

Example Request

curl -X POST "https://api.example.com/endpoint" \
  -H "Authorization: Bearer <token>" \
  -d '{"key": "value"}'

Response

Success (200)

{
  "status": "success",
  "data": {}
}

Error (400)

{
  "error": "Error description"
}

Examples

Practical examples showing common usage patterns.


Last Updated: [Date]


### Workflow Documentation Template

```markdown
# [Workflow Name]

Brief description of the workflow and when to use it.

## Overview

- What this workflow accomplishes
- When to use it
- Who should perform it

## Prerequisites

- Required access/permissions
- Tools needed
- Environmental requirements

## Steps

### Step 1: [Step Name]

Detailed instructions for the step.

```bash
# Example command
command --option value

Expected Output:

Expected command output

Step 2: [Step Name]

Continue with additional steps...

Validation

How to verify the workflow completed successfully.

# Verification command
kubectl get pods -n namespace

Troubleshooting

Common issues and their solutions.

Issue Cause Solution
Error message Why it happens How to fix

Last Updated: [Date]


### Guide Documentation Template

```markdown
# [Guide Topic]

Brief description of the guide's purpose and scope.

## Overview

- What this guide covers
- Who should read it
- Prerequisites

## Key Concepts

### Concept 1

Explanation of important concept.

### Concept 2

Explanation of another concept.

## Implementation

### Basic Setup

Step-by-step instructions for basic implementation.

### Advanced Configuration

More complex scenarios and configurations.

## Best Practices

- Recommendation 1
- Recommendation 2
- Recommendation 3

## Common Patterns

### Pattern 1

Description and example of common usage pattern.

### Pattern 2

Description and example of another pattern.

## Troubleshooting

Common issues and solutions.

## Related Documentation

- [Related Guide 1](/developer-docs/docs/development/contributing/related1)
- [Related Workflow](/developer-docs/docs/development/workflows/related)

---

**Last Updated**: [Date]

📝 Content Guidelines

Technical Accuracy

Verification Requirements
- Test all commands and code examples
- Verify links work correctly
- Check version compatibility
- Validate against current implementation

Review Process
1. Author self-review
2. Peer technical review
3. Documentation team review
4. Final approval

Maintenance

Update Triggers
- Code changes affecting documented features
- New feature releases
- Bug fixes that change behavior
- User feedback indicating confusion

Review Schedule
- Monthly: Review high-traffic pages
- Quarterly: Full documentation audit
- Annually: Major restructuring review

🎨 Visual Standards

Screenshots

Requirements
- Use consistent browser/theme
- Highlight relevant UI elements
- Include relevant context
- Keep current with UI changes

Guidelines
- Crop to relevant content
- Use callouts for important elements
- Maintain consistent sizing
- Include alt text for accessibility

Diagrams

Tools
- Architecture Diagrams: Draw.io or Lucidchart
- Sequence Diagrams: PlantUML or Mermaid
- Network Diagrams: Draw.io
- Flow Charts: Mermaid

Standards
- Use consistent color schemes
- Include legends where needed
- Export as SVG when possible
- Include source files in repository

📐 File Organization

Directory Structure

docs/
├── README.md                    # Main documentation index
├── architecture/                # System architecture
│   ├── README.md
│   ├── overview/
│   ├── components/
│   └── decisions/
├── setup/                      # Installation guides
├── workflows/                  # Step-by-step procedures
├── reference/                  # Technical reference
├── guides/                     # Conceptual guides
└── development/               # Contributing guidelines

Naming Conventions

Files
- Use lowercase with hyphens: environment-creation.md
- Use descriptive names: api-authentication.md
- Avoid abbreviations: troubleshooting.md not trouble.md

Directories
- Use lowercase with hyphens
- Use plural nouns: environments/ not environment/
- Group related content logically

🔍 Quality Checklist

Before Publishing

Content Quality
- [ ] Clear, concise writing
- [ ] Proper grammar and spelling
- [ ] Consistent terminology
- [ ] Logical flow and structure
- [ ] Appropriate level of detail

Technical Accuracy
- [ ] All commands tested
- [ ] Links verified
- [ ] Code examples work
- [ ] Version compatibility checked
- [ ] Screenshots current

Formatting
- [ ] Consistent markdown formatting
- [ ] Proper heading hierarchy
- [ ] Code blocks have language specified
- [ ] Tables properly formatted
- [ ] Images have alt text

Navigation
- [ ] Links to related documentation
- [ ] Clear section organization
- [ ] Table of contents for long documents
- [ ] Breadcrumb navigation where needed

🚀 Publication Workflow

1. Planning

  • Identify documentation needs
  • Define target audience
  • Outline content structure
  • Assign ownership

2. Writing

  • Follow templates and standards
  • Include examples and code
  • Add relevant screenshots
  • Cross-reference related docs

3. Review

  • Self-review for clarity
  • Technical review for accuracy
  • Editorial review for style
  • Final approval

4. Publishing

  • Commit to documentation branch
  • Create pull request
  • Review and merge
  • Update any related documentation

5. Maintenance

  • Monitor for feedback
  • Update as needed
  • Regular review schedule
  • Archive outdated content

📊 Documentation Metrics

Success Metrics

  • User feedback scores
  • Documentation usage analytics
  • Time-to-complete workflows
  • Support ticket reduction

Quality Metrics

  • Link health (broken links)
  • Content freshness (last updated)
  • Completeness (missing sections)
  • Consistency (style adherence)

🛠️ Tools and Resources

Writing Tools

  • Markdown Editor: VS Code with Markdown extensions
  • Grammar Check: Grammarly or similar
  • Link Checker: markdown-link-check
  • Spell Check: cSpell

Documentation Tools

  • Static Site Generator: GitBook or MkDocs
  • API Documentation: Swagger/OpenAPI
  • Diagram Creation: Draw.io, Mermaid
  • Screenshot Tools: CloudApp, Snagit

Collaboration Tools

  • Review Process: GitHub Pull Requests
  • Issue Tracking: GitHub Issues
  • Team Communication: Slack #documentation channel
  • Planning: Project boards

📚 Resources

Style Guides

Training

  • Technical writing courses
  • Markdown tutorials
  • Documentation tools training
  • User experience principles

Document Version: 1.0
Last Updated: January 2024
Next Review: April 2024

Document ID: development/contributing/documentation-standards