Get the FREE Ultimate OpenClaw Setup Guide →

system-design

npx machina-cli add skill shahtuyakov/claude-setup/system-design --openclaw
Files (1)
SKILL.md
2.1 KB

System Design

Architectural decision framework for web apps and iOS native applications with custom backends.

Decision Process

  1. Identify requirements (scale, platform, constraints)
  2. Load relevant reference file (see table below)
  3. Use comparison matrix to evaluate options
  4. Verify compatibility using MCP context7 for latest docs
  5. Document decision with rationale

Reference Navigation

Decision TypeLoadUse When
API stylereferences/api-patterns.mdChoosing REST vs GraphQL vs gRPC
Databasereferences/database-patterns.mdSelecting primary database, caching layer
Authenticationreferences/auth-patterns.mdDesigning auth flow, token strategy
Real-timereferences/realtime-patterns.mdAdding live updates, push notifications
iOS architecturereferences/ios-patterns.mdNative iOS app structure, offline-first
Backend architecturereferences/architecture-patterns.mdMonolith vs microservices, serverless
File storagereferences/storage-patterns.mdMedia uploads, CDN, cloud storage

Decision Documentation

Record each decision in .agents/architect/decisions.md:

## [date] - [decision title]
Context: [what prompted this decision]
Options: [what was considered]
Decision: [what was chosen]
Rationale: [why]

Platform Considerations

Web + iOS Projects

  • Design API with mobile constraints in mind (bandwidth, battery)
  • Plan for offline-first on iOS with backend sync
  • Consider BFF (Backend for Frontend) if needs diverge significantly

iOS-Specific

  • Always check references/ios-patterns.md for native patterns
  • Auth must include Keychain storage and biometrics
  • Push notifications require APNs backend integration

Source

git clone https://github.com/shahtuyakov/claude-setup/blob/main/skills/system-design/SKILL.mdView on GitHub

Overview

System Design provides an architectural decision framework for web apps and iOS native applications with custom backends. It guides technology choices, architecture patterns, API design, database selection, and authentication planning, supported by comparison matrices to help informed decisions.

How This Skill Works

Follow a five-step process: identify requirements (scale, platform, constraints); load the relevant reference file; use a comparison matrix to evaluate options; verify compatibility using MCP context7 with the latest docs; and document the decision with rationale in the designated file.

When to Use It

  • Choosing REST vs GraphQL vs gRPC for an API
  • Selecting the primary database and caching layer
  • Designing authentication flows and token strategies
  • Adding real-time updates or push notifications
  • Evaluating backend architecture: monolith, microservices, or serverless

Quick Start

  1. Step 1: Identify requirements (scale, platform, constraints).
  2. Step 2: Load relevant reference patterns (e.g., references/api-patterns.md, references/database-patterns.md, references/ios-patterns.md).
  3. Step 3: Use the comparison matrix to evaluate options and document the decision in .agents/architect/decisions.md.

Best Practices

  • Identify requirements up front (scale, platform, constraints) before comparing options.
  • Load the matching reference patterns file (e.g., api-patterns.md, ios-patterns.md) to frame choices.
  • Use side-by-side comparison matrices to evaluate trade-offs objectively.
  • Verify compatibility with MCP context7 and latest docs.
  • Document the decision with context, options considered, and the rationale in .agents/architect/decisions.md.

Example Use Cases

  • REST vs GraphQL vs gRPC decision for a public API.
  • Choosing a primary database and caching layer for a high-traffic app.
  • Auth flow design with token strategies and Keychain considerations on iOS.
  • Implementing offline-first iOS architecture with backend sync.
  • Deciding between monolith and microservices/serverless for a mobile backend.

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers