software-architecture

Enforce Python architecture standards for modules, dependencies, testing, and documentation.

Updated Apr 6, 2026
One-click install
npx skills add https://github.com/ParamChordiya/ai-skills-library --skill software-architecture-paramchordiya
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: software-architecture
Source: https://github.com/ParamChordiya/ai-skills-library/tree/main/software-architecture
Command: npx skills add https://github.com/ParamChordiya/ai-skills-library --skill software-architecture-paramchordiya

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill keeps Python codebases disciplined by turning architecture, error handling, testing, and documentation standards into explicit rules that the assistant follows during implementation and refactoring.

Core Features & Use Cases

  • Enforces clear module boundaries, composition over inheritance, and dependency injection for maintainable code.
  • Requires src layout, configuration via settings, structured logging, custom exceptions, and mirrored test structure for production-ready projects.
  • Fits new service builds, refactors of messy projects, API backends, and any code review where design debt needs to be reduced.
  • Example: use it when a Python service mixes business logic into entry points and needs to be reorganized into testable modules with ADRs and coverage goals.

Quick Start

Ask the assistant to review your Python project and rewrite it to follow this architecture standard.

Frequently Asked Questions about software-architecture

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

FAQPage Schema
How do I enforce software architecture standards during a Python refactoring task?

To enforce software architecture standards during Python refactoring, apply rules for module boundaries, dependency injection, and configuration management. This ensures service boundaries remain clear and codebases stay maintainable throughout structural changes.

What is the required project structure for principled Python architecture?

Principled Python architecture requires a src-layout project structure. This layout separates source code from tests and configuration, ensuring clean module boundaries, testable imports, and production-ready project organization.

How do I set up dependency injection and configuration management in a Python service?

Set up dependency injection by using injectable dependencies and manage configuration via dedicated settings. This approach replaces hardcoded values, ensures modules remain testable, and enforces clear separation between business logic and infrastructure.

Does this architectural standard require specific Python testing and logging practices?

Yes, this architectural standard requires mirrored test structures with pytest coverage thresholds and structured logging. It also mandates custom exceptions for error handling to ensure production-ready observability and reliability.

When do I need ADR documentation for my Python codebase?

You need ADR documentation when enforcing software architecture standards across Python projects. Architecture Decision Records capture design choices for module boundaries and service structures, reducing design debt during new service builds and messy refactors.

What is the best way to reorganize a Python service that mixes business logic into entry points?

The best way to reorganize mixed Python services is enforcing clear module boundaries and composition over inheritance. Extract logic into testable modules, apply dependency injection, and document API docstrings to reduce design debt.