architecture

Guide architectural decisions, pattern selection, and code quality enforcement.

10|2|Updated Mar 10, 2026
One-click install
npx skills add https://github.com/bugrabilge/bilge-development-kit --skill architecture-bugrabilge
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: architecture
Source: https://github.com/bugrabilge/bilge-development-kit/tree/main/skills/architecture
Command: npx skills add https://github.com/bugrabilge/bilge-development-kit --skill architecture-bugrabilge

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) and assets (resource) components.

What problem does it solve?

This Skill provides a comprehensive framework for making sound architectural decisions, selecting appropriate design patterns, and ensuring high code quality, thereby preventing costly technical debt and ensuring system maintainability and scalability.

Core Features & Use Cases

  • Architectural Decision Making: Guides users through trade-off analysis and documentation using ADRs.
  • Pattern Selection: Offers decision trees and guidance for choosing between patterns like Microservices, DDD, Clean Architecture, etc.
  • Code Quality Principles: Enforces SOLID principles, naming conventions, and avoidance of common anti-patterns.
  • Use Case: A team is deciding whether to adopt a microservices architecture or a modular monolith for their new product. This Skill helps them analyze their scale, team size, and domain complexity to make an informed decision and document it.

Quick Start

Use the architecture skill to help decide between a modular monolith and microservices for a new SaaS product.

Frequently Asked Questions about architecture

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

FAQPage Schema
How do I choose between a modular monolith and microservices for system design?

System design pattern selection requires analyzing team size, expected scale, and domain complexity to choose between a modular monolith and microservices. This approach guides you through the trade-off analysis to ensure maintainability.

What is an ADR and how does it help with architectural decision-making?

An ADR is an Architectural Decision Record used to facilitate architectural decision-making and document trade-off analysis. It prevents technical debt by formally recording architectural choices and their underlying context.

How do I apply Clean Architecture and DDD principles to enforce code quality?

Applying Clean Architecture and DDD enforces code quality by utilizing SOLID principles, naming conventions, and anti-pattern avoidance. This ensures your software design remains scalable and maintainable throughout its lifecycle.

When do I need Domain-Driven Design for my software architecture?

You need Domain-Driven Design (DDD) when managing complex business domains within your software architecture. It supports pattern selection and architectural review to manage domain complexity and ensure system scalability.

What is the best way to document trade-off analysis for a refactoring plan?

Documenting trade-off analysis for refactoring is best achieved using Architectural Decision Records (ADRs). This framework guides system design review and ensures refactoring choices prevent technical debt while maintaining scalability.