🎯

markdown-doc-writer

🎯Skill

from yennanliu/cs_basics

VibeIndex|
What it does

markdown-doc-writer skill from yennanliu/cs_basics

markdown-doc-writer

Installation

Install skill:
npx skills add https://github.com/yennanliu/cs_basics --skill markdown-doc-writer
5
AddedJan 29, 2026

Skill Details

SKILL.md

Technical documentation writer specializing in creating clear, well-structured markdown documents for algorithms, system design, interview preparation, and code documentation. Use when writing README files, algorithm explanations, system design docs, or technical guides.

Overview

# Markdown Documentation Writer

When to use this Skill

Use this Skill when:

  • Writing README files
  • Creating algorithm explanations
  • Documenting system design solutions
  • Writing interview preparation guides
  • Creating cheat sheets and reference materials
  • Adding code documentation

Documentation Standards

1. Structure Guidelines

Every document should have:

  1. Clear title (H1)
  2. Brief description
  3. Table of contents (for long docs)
  4. Well-organized sections (H2, H3)
  5. Code examples
  6. Complexity analysis (for algorithms)
  7. References/links

Standard Template:

```markdown

# Title

Brief description of what this document covers.

Table of Contents

  • [Section 1](#section-1)
  • [Section 2](#section-2)

Section 1

Content...

Section 2

Content...

References

  • [Link 1](url)

```

2. Algorithm Documentation Format

Use this structure for algorithm problems:

```markdown

# Problem Number: Problem Title

Difficulty: Easy/Medium/Hard

Topics: Array, Two Pointers, Hash Table

Companies: Google, Amazon, Meta

Problem Statement

[Clear description of the problem]

Example 1:

```

Input: [example input]

Output: [example output]

Explanation: [why this is the output]

```

Constraints:

  • [List constraints]

Approach

Intuition

[Explain the key insight in simple terms]

Algorithm

  1. [Step 1]
  2. [Step 2]
  3. [Step 3]

Complexity Analysis

  • Time Complexity: O(n) - [Explain why]
  • Space Complexity: O(1) - [Explain why]

Solution

Java

```java

class Solution {

public ReturnType method(InputType param) {

// Implementation

}

}

```

Python

```python

class Solution:

def method(self, param: InputType) -> ReturnType:

# Implementation

```

Alternative Approaches

Approach 2: [Name]

[Description]

Complexity: O(?) time, O(?) space

Comparison

| Approach | Time | Space | Notes |

|----------|------|-------|-------|

| Approach 1 | O(n) | O(1) | Optimal |

| Approach 2 | O(nΒ²) | O(1) | Simpler code |

Key Takeaways

  • [Learning point 1]
  • [Learning point 2]

Related Problems

  • [Problem A](link)
  • [Problem B](link)

```

3. System Design Documentation Format

Follow the template structure:

```markdown

# System Name: Brief Description

1. Requirements

Functional Requirements

  • Feature 1: [Description]
  • Feature 2: [Description]

Non-Functional Requirements

  • Scale: X million DAU, Y QPS
  • Performance: p99 latency < Z ms
  • Availability: 99.9% uptime

2. Capacity Estimation

Traffic

  • Daily Active Users: 100M
  • Requests per user: 10/day
  • QPS: 100M * 10 / 86400 β‰ˆ 11,574

Storage

  • Per user data: 1KB
  • Total: 100M * 1KB = 100GB

Bandwidth

  • Average request size: 10KB
  • Bandwidth: 11,574 QPS * 10KB β‰ˆ 115MB/s

3. API Design

```

POST /api/resource

GET /api/resource/{id}

PUT /api/resource/{id}

DELETE /api/resource/{id}

```

4. High-Level Architecture

```

[Client] β†’ [Load Balancer] β†’ [App Servers]

↓

[Cache] [DB]

```

5. Database Design

Schema

```sql

CREATE TABLE users (

id BIGSERIAL PRIMARY KEY,

username VARCHAR(50) UNIQUE NOT NULL,

created_at TIMESTAMP DEFAULT NOW()

);

```

Indexing Strategy

  • Index on username for fast lookup
  • Index on created_at for sorting

6. Detailed Component Design

Component 1: [Name]

Responsibility: [What it does]

Technology: [Specific tech choice]

Scaling: [How to scale]

7. Scalability & Reliability

Caching Strategy

  • [Cache what, where, why]

Sharding Strategy

  • [How to partition data]

Replication

  • [Master-slave setup]

8. Trade-offs & Alternatives

| Decision | Chosen | Alternative | Rationale |

|----------|--------|-------------|-----------|

| Database | PostgreSQL | MongoDB | Need ACID |

9. Monitoring & Alerting

  • Metrics to track: [List]
  • Alerts: [When to trigger]

10. Security Considerations

  • Authentication: [Method]
  • Authorization: [Method]
  • Data encryption: [At rest, in transit]

References

  • [External resources]

```

4. Code Formatting

Inline code: Use backticks for variable names, commands, short code

Code blocks: Use fenced code blocks with language

```markdown

```java

public class Example {

// Code here

}

```

```

Supported languages:

  • java, python, javascript, sql, bash
  • json, yaml, xml, markdown
  • c, cpp, scala, go

5. Visual Elements

Tables:

```markdown

| Column 1 | Column 2 | Column 3 |

|----------|----------|----------|

| Data 1 | Data 2 | Data 3 |

```

Lists:

```markdown

Unordered:

  • Item 1

- Nested item

  • Item 2

Ordered:

  1. First step
  2. Second step
  3. Third step

```

Emphasis:

```markdown

italic or _italic_

bold or __bold__

bold italic

code

~~strikethrough~~

```

Links:

```markdown

[Link text](URL)

[Link with title](URL "Title")

[Reference link][ref]

[ref]: URL "Title"

```

Images:

```markdown

![Alt text](image-url)

![Alt text](image-url "Title")

```

6. Complexity Analysis Documentation

Standard format:

```markdown

Complexity Analysis

Time Complexity: O(n log n)

  • Sorting takes O(n log n)
  • Single pass takes O(n)
  • Overall: O(n log n)

Space Complexity: O(n)

  • Hash map stores n elements: O(n)
  • Result array: O(n)
  • Overall: O(n)

Optimization Notes

  • Can reduce space to O(1) by modifying input in-place
  • Trade-off: Destroys original input

```

Complexity cheat sheet to reference:

```markdown

| Notation | Name | Example |

|----------|------|---------|

| O(1) | Constant | Array access |

| O(log n) | Logarithmic | Binary search |

| O(n) | Linear | Array scan |

| O(n log n) | Linearithmic | Merge sort |

| O(nΒ²) | Quadratic | Nested loops |

| O(2ⁿ) | Exponential | Recursive Fibonacci |

| O(n!) | Factorial | Permutations |

```

7. Writing Style Guidelines

Be Clear:

  • Use simple language
  • Avoid jargon unless necessary
  • Define technical terms on first use
  • Use active voice

Be Concise:

  • Remove unnecessary words
  • Use bullet points for lists
  • Break long paragraphs
  • One idea per paragraph

Be Consistent:

  • Use same terminology throughout
  • Follow naming conventions
  • Maintain consistent formatting
  • Use templates for similar documents

Examples:

❌ Bad:

```

The algorithm basically works by iterating through the array and

then it checks if the element is what we're looking for.

```

βœ… Good:

```

The algorithm iterates through the array to find the target element.

```

8. Interview Preparation Docs

Pattern template:

```markdown

# Pattern Name

When to Use

  • [Characteristic 1]
  • [Characteristic 2]

Template Code

```python

def pattern_template(arr):

# Step 1: Setup

# Step 2: Main logic

# Step 3: Return result

```

Example Problems

  1. [Problem 1](link) - Easy
  2. [Problem 2](link) - Medium
  3. [Problem 3](link) - Hard

Key Points

  • [Tip 1]
  • [Tip 2]

```

9. Cheat Sheet Format

Keep it scannable:

```markdown

# Topic Cheat Sheet

Quick Reference

| Operation | Syntax | Complexity |

|-----------|--------|------------|

| Access | arr[i] | O(1) |

| Search | arr.indexOf(x) | O(n) |

Common Patterns

Pattern 1

```code

// Code snippet

```

Use when: [Description]

Pattern 2

```code

// Code snippet

```

Use when: [Description]

Gotchas

  • ⚠️ [Common mistake 1]
  • ⚠️ [Common mistake 2]

```

10. Document Maintenance

Version control:

  • Use git to track changes
  • Write meaningful commit messages
  • Keep documents up to date with code

Cross-references:

  • Link related documents
  • Reference source code files
  • Point to external resources

Validation:

  • Check all links work
  • Verify code examples compile
  • Test complexity analysis accuracy

Project-Specific Guidelines

For CS_basics repository:

  1. Algorithm problems: Use detailed format with multiple languages
  2. System design: Follow 00_template.md structure
  3. Cheat sheets: Keep in doc/ directory
  4. Cross-language: Maintain consistency across Java/Python implementations
  5. Interview prep: Focus on pattern recognition and problem-solving approach

File organization:

```

doc/

β”œβ”€β”€ algorithm_patterns/

β”‚ β”œβ”€β”€ two_pointers.md

β”‚ └── sliding_window.md

β”œβ”€β”€ data_structure/

β”‚ └── complexity_chart.md

└── system_design/

└── case_studies/

```

Quality Checklist

Before finalizing documentation:

  • [ ] Clear title and description
  • [ ] Proper heading hierarchy
  • [ ] Code examples tested and working
  • [ ] Complexity analysis included
  • [ ] Consistent formatting
  • [ ] No broken links
  • [ ] Spell-checked
  • [ ] Follows project conventions
  • [ ] Related content linked

Tools & References

Markdown validation:

  • Check syntax with markdown linters
  • Preview before committing
  • Use consistent line breaks

Useful symbols:

  • βœ… Checkmark for correct approach
  • ❌ X for incorrect approach
  • ⚠️ Warning for gotchas
  • πŸ’‘ Bulb for tips
  • πŸ“ Note for important points