arch_patterns

Guides selection of system architecture patterns including monolith, microservices, event-driven, and CQRS.

Updated Jan 14, 2026
One-click install
npx skills add https://github.com/jvsandhu/agentic-skills --skill arch-patterns-jvsandhu
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: arch_patterns
Source: https://github.com/jvsandhu/agentic-skills/tree/main/skills/arch_patterns
Command: npx skills add https://github.com/jvsandhu/agentic-skills --skill arch-patterns-jvsandhu

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Choosing the wrong system architecture leads to over-engineered systems, scaling bottlenecks, and teams unable to maintain their codebase. This Skill provides a structured decision workflow for selecting the right architecture pattern based on actual requirements. ## Core Features & Use Cases - Pattern Comparison: Side-by-side trade-off tables for monolith vs microservices, layered architecture, event-driven systems, and CQRS. - Phased Decision Workflow: A three-phase checklist covering requirements analysis, complexity assessment, and pattern selection with verification checkpoints. - Scope Disambiguation: Clear boundary rules distinguishing system architecture decisions from UI/UX design patterns. - Use Case: A startup team debating whether to split their growing application into microservices can follow the workflow to determine that a modular monolith fits their team size and scale, avoiding a distributed monolith. ## Quick Start Ask the agent to evaluate whether your project should use a monolith or microservices architecture given your team size and scaling requirements.

Frequently Asked Questions about arch_patterns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I choose between monolith and microservices architecture?

Choose a monolith for small teams, MVPs, and fast iteration; choose microservices for large teams needing independent deployment and service-based scaling. The default recommendation is to start with a modular monolith and split out modules only when they require independent scaling.

What is a modular monolith and when should I use it?

A modular monolith separates modules by boundaries within a single deployable unit. It suits teams growing from startup to scale-up phase and prevents the distributed monolith chaos that comes from premature microservices adoption.

When should I use CQRS in my system design?

Use CQRS when data complexity is high and reporting workloads are heavy. It separates the command service writing to a write database from the query service reading from a read database, synchronized through events.

What is the difference between architecture patterns and design patterns?

Architecture patterns cover system-level concerns like microservices, CQRS, databases, and scaling. Design patterns in this context refer to UI/UX concerns like z-index, shadows, animation, and spacing. Backend system decisions use architecture patterns.

When should I use event-driven architecture?

Use event-driven architecture for real-time requirements and high scale complexity, where producers publish to an event broker such as Kafka or SQS and consumers process events asynchronously.