software-architecture

Document software architecture using ARCHITECTURE.md and docs/*.md files with Mermaid diagrams. Use proactively when ARCHITECTURE.md exists in project root, or invoke to create initial architecture documentation. Covers system design, data flows, component relationships, and code organization with references to key entry points and abstractions.

25 stars

Best use case

software-architecture is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Document software architecture using ARCHITECTURE.md and docs/*.md files with Mermaid diagrams. Use proactively when ARCHITECTURE.md exists in project root, or invoke to create initial architecture documentation. Covers system design, data flows, component relationships, and code organization with references to key entry points and abstractions.

Teams using software-architecture should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/software-architecture/SKILL.md --create-dirs "https://raw.githubusercontent.com/ComeOnOliver/skillshub/main/skills/aiskillstore/marketplace/chemiseblanc/software-architecture/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/software-architecture/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How software-architecture Compares

Feature / Agentsoftware-architectureStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Document software architecture using ARCHITECTURE.md and docs/*.md files with Mermaid diagrams. Use proactively when ARCHITECTURE.md exists in project root, or invoke to create initial architecture documentation. Covers system design, data flows, component relationships, and code organization with references to key entry points and abstractions.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Software Architecture Documentation

Document system architecture using a root `ARCHITECTURE.md` with detailed component docs in `docs/*.md`.

## Structure

```
project/
├── ARCHITECTURE.md      # High-level system overview
└── docs/
    ├── <component>.md   # Detailed component documentation
    └── ...
```

## Proactive Usage

When `ARCHITECTURE.md` exists in project root:

1. **Before major changes**: Read `ARCHITECTURE.md` to understand system structure
2. **After structural changes**: Update diagrams and entry points
3. **When adding components**: Create new `docs/*.md` file and link from `ARCHITECTURE.md`
4. **During refactoring**: Update affected diagrams and file references

## Creating Architecture Documentation

### Initial Setup Workflow

1. **Analyze codebase structure**
   - Identify entry points (main, CLI, API handlers)
   - Map major components and their responsibilities
   - Trace key data flows

2. **Create `ARCHITECTURE.md`**
   - Write system overview (1-2 paragraphs)
   - Add C4 Context diagram showing system boundaries
   - Document entry points table
   - List key abstractions
   - Add testing overview
   - Link to detail docs (create `docs/` section even if empty initially)

3. **Create detail docs for major components**
   - One file per logical component in `docs/`
   - Name files to match component names (flexible convention)
   - Include component-level diagrams

See [references/document-templates.md](references/document-templates.md) for complete templates.

## ARCHITECTURE.md Sections

### Required Sections

| Section | Content |
|---------|---------|
| Overview | 1-2 paragraphs on system purpose |
| System Diagram | C4 Context or Container diagram |
| Key Entry Points | Table of primary files with descriptions |
| Key Abstractions | Table of important classes/interfaces/functions |
| Testing | Overview of test strategy and key test locations |
| Detail Docs | Links to `docs/*.md` files |

### Optional Sections

| Section | Include When |
|---------|--------------|
| Data Flow | Complex pipelines or transformations |
| Code Organization | Non-obvious directory structure |
| Configuration | Significant config or environment setup |

## Detail Documents (`docs/*.md`)

Create a detail doc when a component:
- Has 3+ key files or abstractions
- Contains complex internal logic
- Interacts with multiple other components
- Needs sequence diagrams to explain flows

### Naming Convention

Flexible. Match the component's identity:
- `docs/auth.md` for authentication component
- `docs/data-pipeline.md` for data pipeline
- `docs/cli.md` for CLI handling

### Required Content

| Section | Content |
|---------|---------|
| Purpose | What this component does |
| Key Files | Table of important files |
| Key Abstractions | Classes, interfaces, functions |

### Optional Content

| Section | Include When |
|---------|--------------|
| Architecture Diagram | Multiple internal subcomponents |
| Sequence Diagram | Multi-step interactions |
| Dependencies | Non-obvious dependencies |
| Testing | Component-specific test patterns |
| Configuration | Component-specific config |

## Diagram Selection

| Diagram Type | Use For |
|--------------|---------|
| C4 Context | `ARCHITECTURE.md` - system boundaries and external actors |
| C4 Container | `ARCHITECTURE.md` - deployable units (services, databases) |
| C4 Component | `docs/*.md` - internal structure of a component |
| Flowchart | Control flow, pipelines, decision logic |
| Sequence | Request flows, API interactions, multi-step processes |
| ER Diagram | Data models, entity relationships |
| Class Diagram | Object hierarchies, interface implementations |

Start minimal (3-5 nodes). Add detail only when it improves clarity.

See [references/mermaid-patterns.md](references/mermaid-patterns.md) for diagram templates.

## Entry Points and Abstractions

### Entry Points Table

Document files that serve as starting points for understanding the codebase:

```markdown
| File | Description |
|------|-------------|
| `src/main.py` | Application entry point |
| `src/core/engine.py` | Core processing engine |
| `tests/conftest.py` | Test fixtures and setup |
```

Include:
- Application entry points (main, CLI, handlers)
- Core domain logic locations
- Configuration files
- Test setup and fixtures

### Key Abstractions Table

Document important classes, interfaces, and functions:

```markdown
| Abstraction | Location | Purpose |
|-------------|----------|---------|
| `Engine` | `src/core/engine.py` | Orchestrates processing |
| `Handler` | `src/api/base.py` | Request handling interface |
```

Focus on:
- Base classes and interfaces
- Core domain objects
- Public API surfaces
- Extension points

## Maintaining Documentation

### When to Update

| Trigger | Action |
|---------|--------|
| New component added | Create `docs/<component>.md`, add link to `ARCHITECTURE.md` |
| Entry point changed | Update entry points table |
| Major refactoring | Update affected diagrams and file references |
| New external dependency | Update C4 Context diagram |
| Component removed | Remove or archive corresponding detail doc |

### Update Checklist

After structural changes:
1. Verify entry points table is accurate
2. Check diagram nodes match actual components
3. Confirm file paths in tables are valid
4. Update any affected detail docs

Related Skills

exa-reference-architecture

25
from ComeOnOliver/skillshub

Implement Exa reference architecture for search pipelines, RAG, and content discovery. Use when designing new Exa integrations, reviewing project structure, or establishing architecture standards for neural search applications. Trigger with phrases like "exa architecture", "exa project structure", "exa RAG pipeline", "exa reference design", "exa search pipeline".

exa-architecture-variants

25
from ComeOnOliver/skillshub

Choose and implement Exa architecture patterns at different scales: direct search, cached search, and RAG pipeline. Use when designing Exa integrations, choosing between simple search and full RAG, or planning architecture for different traffic volumes. Trigger with phrases like "exa architecture", "exa blueprint", "how to structure exa", "exa RAG design", "exa at scale".

evernote-reference-architecture

25
from ComeOnOliver/skillshub

Reference architecture for Evernote integrations. Use when designing system architecture, planning integrations, or building scalable Evernote applications. Trigger with phrases like "evernote architecture", "design evernote system", "evernote integration pattern", "evernote scale".

elevenlabs-reference-architecture

25
from ComeOnOliver/skillshub

Implement ElevenLabs reference architecture for production TTS/voice applications. Use when designing new ElevenLabs integrations, reviewing project structure, or building a scalable audio generation service. Trigger: "elevenlabs architecture", "elevenlabs project structure", "how to organize elevenlabs", "TTS service architecture", "elevenlabs design patterns", "voice API architecture".

documenso-reference-architecture

25
from ComeOnOliver/skillshub

Implement Documenso reference architecture with best-practice project layout. Use when designing new Documenso integrations, reviewing project structure, or establishing architecture standards for document signing applications. Trigger with phrases like "documenso architecture", "documenso best practices", "documenso project structure", "how to organize documenso".

deepgram-reference-architecture

25
from ComeOnOliver/skillshub

Implement Deepgram reference architecture for scalable transcription systems. Use when designing transcription pipelines, building production architectures, or planning Deepgram integration at scale. Trigger: "deepgram architecture", "transcription pipeline", "deepgram system design", "deepgram at scale", "enterprise deepgram", "deepgram queue".

databricks-reference-architecture

25
from ComeOnOliver/skillshub

Implement Databricks reference architecture with best-practice project layout. Use when designing new Databricks projects, reviewing architecture, or establishing standards for Databricks applications. Trigger with phrases like "databricks architecture", "databricks best practices", "databricks project structure", "how to organize databricks", "databricks layout".

customerio-reference-architecture

25
from ComeOnOliver/skillshub

Implement Customer.io enterprise reference architecture. Use when designing integration layers, event-driven architectures, or enterprise-grade Customer.io setups. Trigger: "customer.io architecture", "customer.io design", "customer.io enterprise", "customer.io integration pattern".

cursor-reference-architecture

25
from ComeOnOliver/skillshub

Reference architecture for Cursor IDE projects: directory structure, rules organization, indexing strategy, and team configuration patterns. Triggers on "cursor architecture", "cursor project structure", "cursor best practices", "cursor file structure".

coreweave-reference-architecture

25
from ComeOnOliver/skillshub

Reference architecture for CoreWeave GPU cloud deployments. Use when designing ML infrastructure, planning multi-model serving, or establishing CoreWeave deployment standards. Trigger with phrases like "coreweave architecture", "coreweave design", "coreweave infrastructure", "coreweave best practices".

cohere-reference-architecture

25
from ComeOnOliver/skillshub

Implement Cohere reference architecture with layered project layout for RAG and agents. Use when designing new Cohere integrations, reviewing project structure, or establishing architecture standards for Cohere API v2 applications. Trigger with phrases like "cohere architecture", "cohere project structure", "cohere layout", "organize cohere app", "cohere design pattern".

coderabbit-reference-architecture

25
from ComeOnOliver/skillshub

Implement CodeRabbit reference architecture with production-grade .coderabbit.yaml configuration. Use when designing review configuration for a new project, establishing team standards, or building a comprehensive review setup from scratch. Trigger with phrases like "coderabbit architecture", "coderabbit best practices", "coderabbit project structure", "coderabbit reference config", "coderabbit full setup".