app-architecture

Scaffold platform-agnostic apps with contract-port architecture and dependency injection.

1|Updated Dec 15, 2025
One-click install
npx skills add https://github.com/Anveio/conveaux --skill app-architecture
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: app-architecture
Source: https://github.com/Anveio/conveaux/tree/main/.claude/skills/app-architecture
Command: npx skills add https://github.com/Anveio/conveaux --skill app-architecture

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill automates the creation of platform-agnostic applications following established architectural patterns.

Core Features & Use Cases

  • Contract-Port Architecture: Automatically structure apps with composition roots and dependency injection.

Quick Start

When creating new apps or scaffolding CLI tools, invoke this Skill to apply standard app architecture patterns.

Quick Start

When creating new apps in apps/, setting up dependency injection, or when the user asks about app structure, use this Skill to ensure proper architectural separation.

Quick Start

Use this Skill when building applications to ensure they follow contract-port architecture with proper composition roots.

Frequently Asked Questions about app-architecture

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

FAQPage Schema
How do I build platform-agnostic applications with dependency injection?

Contract-port architecture eliminates platform dependencies by enforcing a composition root where all runtime dependencies are explicitly assembled at startup. This approach isolates platform-specific globals, wires modules through ports, and injects dependencies into domain logic rather than allowing globals, making your app portable across environments.

What is a composition root and why do I need one?

A composition root is the single entry point where your application instantiates and wires all dependencies before execution. It centralizes dependency assembly, prevents scattered global state, and makes platform dependencies explicit and testable. This Skill scaffolds composition roots automatically in new apps.

How do I structure a new app to avoid platform-specific globals?

Contract-port architecture segregates platform concerns from domain logic by defining ports—interfaces through which domain modules receive dependencies. The Skill scaffolds this structure in apps/, setting up dependency injection so domain modules never reference platform-specific globals directly.

Can I use contract-port architecture with CLI tools?

Yes. This Skill handles scaffolding CLI tools with proper architectural separation, applying the same composition root and dependency injection patterns to ensure CLI commands stay platform-agnostic and testable.

What's the difference between ports and platform-specific entrypoints?

Ports are abstract interfaces your domain modules depend on; entrypoints are platform-specific implementations that satisfy those ports. This separation lets you swap implementations without changing domain code, and the Skill enforces this boundary during app structure setup.

When should I apply contract-port architecture to existing apps?

Apply it when platform dependencies are scattered across your codebase, making testing and porting difficult. This Skill is most effective for new apps or CLI tools where you can establish the pattern early; for existing codebases, it answers questions about refactoring app structure toward this model.