Interactive selector and router for architecture paradigms. Use when selecting architecture patterns for new systems, comparing paradigm trade-offs, creating architecture decision records, evaluating architecture fit for team size and domain complexity, planning implementation roadmaps. Do not use when implementing a specific known paradigm - use the specific architecture-paradigm-* skill (hexagonal, layered, microservices, etc.) instead. reviewing existing architecture - use architecture-review instead. Use this skill BEFORE making architecture decisions. Check even if unsure about needs.
Guides selection of software architecture patterns based on system requirements and team context.
/plugin marketplace add athola/claude-night-market/plugin install archetypes@claude-night-marketThis skill inherits all available tools. When active, it can use any tool Claude has access to.
This skill helps you select the right architecture paradigm(s) for your system, then routes you to the specific paradigm skill for implementation details.
Match your needs to the recommended paradigm:
| Your Scenario | Primary Paradigm | Load Skill |
|---|---|---|
| Enterprise app with multiple teams | Microservices or Modular Monolith | architecture-paradigm-microservices or architecture-paradigm-modular-monolith |
| Complex business rules & testing | Functional Core, Imperative Shell | architecture-paradigm-functional-core |
| Real-time/event processing | Event-Driven Architecture | architecture-paradigm-event-driven |
| Legacy system modernization | Hexagonal (Ports & Adapters) | architecture-paradigm-hexagonal |
| Cloud-native/bursty workloads | Serverless | architecture-paradigm-serverless |
| ETL/data processing pipeline | Pipeline Architecture | architecture-paradigm-pipeline |
| Simple CRUD app | Layered Architecture | architecture-paradigm-layered |
| Command/query separation | CQRS + Event Sourcing | architecture-paradigm-cqrs-es |
Primary Concerns (select all that apply):
functional-core or hexagonalmicroservices or modular-monolithhexagonalevent-driven or space-basedlayered or modular-monolithhexagonal or microkernelSystem Context:
< 5 → Layered/Functional Core | 5-15 → Modular Monolith | 15-50 → Microservices | 50+ → Microservices/Space-BasedSimple → Layered | Moderate → Hexagonal/Modular Monolith | Complex → Functional Core/CQRS | Highly Complex → Microservices/Event-DrivenBased on your needs from Step 1, review these options:
For Testability & Business Logic
architecture-paradigm-functional-core - Isolates business logic from infrastructurearchitecture-paradigm-hexagonal - Clear domain/infrastructure boundariesFor Team Autonomy
architecture-paradigm-microservices - Independent deployment and scalingarchitecture-paradigm-modular-monolith - Team autonomy without distributed complexityFor Infrastructure Flexibility
architecture-paradigm-hexagonal - Swap infrastructure without domain changesFor Simplicity & Maintainability
architecture-paradigm-layered - Simple, well-understood separationFor Real-time Event Processing
architecture-paradigm-event-driven - Scalable, decoupled processingarchitecture-paradigm-space-based - In-memory data grids for linear scalabilityFor Legacy Integration
architecture-paradigm-microkernel - Plugin architecture for extensible platformsarchitecture-paradigm-hexagonal - Adapters for external systemsOnce you've selected your paradigm(s), load the specific skill for detailed guidance:
# Example: You selected Hexagonal Architecture
Skill(archetypes:architecture-paradigm-hexagonal)
The individual paradigm skill provides:
| Paradigm | Complexity | Team Size | Best For | Skill Name |
|---|---|---|---|---|
| Functional Core | Medium | Small-Large | Complex business logic | architecture-paradigm-functional-core |
| Hexagonal | Medium | Small-Large | Infrastructure changes | architecture-paradigm-hexagonal |
| Layered | Low | Small-Medium | Simple domains | architecture-paradigm-layered |
| Modular Monolith | Medium | Medium-Large | Evolving systems | architecture-paradigm-modular-monolith |
| Microservices | High | Large | Complex domains | architecture-paradigm-microservices |
| Event-Driven | High | Medium-Large | Real-time processing | architecture-paradigm-event-driven |
| CQRS + ES | High | Medium-Large | Audit trails | architecture-paradigm-cqrs-es |
| Service-Based | Medium | Medium | Coarse-grained services | architecture-paradigm-service-based |
| Serverless | Medium | Small-Medium | Cloud-native/bursty | architecture-paradigm-serverless |
| Microkernel | Medium | Small-Medium | Plugin systems | architecture-paradigm-microkernel |
| Space-Based | High | Large | Linear scalability | architecture-paradigm-space-based |
| Pipeline | Low | Small-Medium | ETL workflows | architecture-paradigm-pipeline |
| Client-Server | Low | Small | Traditional apps | architecture-paradigm-client-server |
/architecture-review for evaluation/writing-plans for detailed task breakdownSkill(archetypes:architecture-paradigm-NAME)Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.