Agent skill · software engineering · aiskillstore

software-architecture

Guide for quality focused software architecture. This skill should be used when users want to write code, design architecture, analyze code, in any case that relates to software development.

Why this skill is useful

Codifies architectural principles and best practices that the AI could infer but now doesn't have to guess.

What it needs

About 2k tokens when loaded. Last updated 2026-08-07. 405 stars on the source repository.

What this skill does

Software Architecture Development Skill This skill provides guidance for quality focused software development and architecture. It is based on Clean Architecture and Domain Driven Design principles. Code Style Rules General Principles Early return pattern: Always use early returns when possible, over nested conditions for better readability Avoid code duplication through creation of reusable functions and modules Decompose long (more than 80 lines of code) components and functions into multiple smaller components and functions. If they cannot be used anywhere else, keep it in the same file. But if file longer than 200 lines of code, it should be split into multiple files. Use arrow functions instead of function declarations when possible Best Practices Library-First Approach ALWAYS search for existing solutions before writing custom code Check npm for existing libraries that solve the problem Evaluate existing services/SaaS solutions Consider third-party APIs for common functionality Use libraries instead of writing your own utils or helpers. For example, use cockatiel instead of writing your own retry logic. When custom code IS justified: Specific business logic unique to the domain Performance-critical paths with special requirements When external dependencies would be overkill Security-sensitive code requiring full control When existing solutions don't meet requirements after thorough evaluation Architecture and Design Clean Architecture & DDD Principles: Follow domain-driven design and ubiquitous language Separate domain entities from infrastructure concerns Keep business logic independent of frameworks Define use cases clearly and keep them isolated Naming Conventions: AVOID generic names: utils, helpers, common, shared USE domain-specific names: OrderCalculator, UserAuthenticator, InvoiceGenerator Follow bounded context naming patterns Each module should have a single, clear purpose Separation of Concerns: Do NOT mix business logic with UI components Keep data …

How to use it

Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:

@skills aiskillstore/software-architecture--baa8a3

View the source on GitHub

Browse the @skills marketplace