rm-guide-architecture

Align C# architecture decisions around inward dependencies and composition.

Updated Nov 11, 2023
One-click install
npx skills add https://github.com/michaelvolz/redmuffin.Blazor.StaticWeb --skill rm-guide-architecture
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: rm-guide-architecture
Source: https://github.com/michaelvolz/redmuffin.Blazor.StaticWeb/tree/main/.opencode/skills/redmuffin-standards/rm-guide-architecture
Command: npx skills add https://github.com/michaelvolz/redmuffin.Blazor.StaticWeb --skill rm-guide-architecture

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This guidance keeps architecture decisions for services, boundaries, and cross-layer C# changes focused on composition, inward dependency flow, and single-responsibility clarity so teams avoid brittle or over-engineered systems.

Core Features & Use Cases

  • Architecture guardrails: Remind designers to keep abstractions small and explicit while keeping domain, application, infrastructure, and presentation concerns separate.
  • Pattern discipline: Encourage composition over inheritance, limit dependencies to inward flows, and ensure each type has one reason to change.
  • Use Case: When planning a new feature slice or refactoring service boundaries, consult these principles to prevent unnecessary architectural complexity and keep contracts clear.

Quick Start

Ask for guidance on designing a new C# service boundary with composition, inward dependencies, and single-responsibility checks.

Frequently Asked Questions about rm-guide-architecture

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

FAQPage Schema
How do I design clean C# service boundaries with proper dependency management?

Design clean C# service boundaries by keeping abstractions small and explicit, ensuring dependencies flow inward, and separating domain, application, infrastructure, and presentation concerns to prevent brittle systems. Each type should have a single reason to change.

Why should I prefer composition over inheritance when refactoring C# architecture?

Prefer composition over inheritance in C# architecture to limit dependency flows and ensure each type has one reason to change. This pattern discipline prevents unnecessary architectural complexity and keeps service contracts clear during cross-layer refactors.

What is the best way to structure cross-layer C# refactors without over-engineering?

Structure cross-layer C# refactors by aligning architecture decisions around inward dependencies and single-responsibility clarity. Keep domain, application, infrastructure, and presentation concerns separate to prevent unnecessary architectural complexity and maintain clear contracts.

When do I need architectural guardrails for new C# feature slices?

Apply architectural guardrails when planning a new C# feature slice or refactoring service boundaries. Consult principles for composition, inward dependency flow, and single-responsibility checks to prevent unnecessary complexity and keep abstractions explicit.

Does this architecture guidance work for separating domain and infrastructure concerns in C#?

Yes, this architecture guidance explicitly separates domain, application, infrastructure, and presentation concerns in C# services. It ensures dependencies flow inward and abstractions remain small and explicit, keeping boundaries clear during cross-layer changes.

How do I keep abstractions small and explicit when designing C# services?

Keep abstractions small and explicit in C# services by applying pattern discipline that encourages composition over inheritance. Ensure dependencies flow inward and each type has a single reason to change, preventing unnecessary architectural complexity.