elixir-planning

Plan Elixir application architecture with decision tables for domain boundaries and supervision strategies.

2|Updated Mar 20, 2026
One-click install
npx skills add https://github.com/ChivukulaVirinchi/nerves_view --skill elixir-planning
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: elixir-planning
Source: https://github.com/ChivukulaVirinchi/nerves_view/tree/main/.opencode/skills/planning
Command: npx skills add https://github.com/ChivukulaVirinchi/nerves_view --skill elixir-planning

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires architecture-patterns.md, data-ownership.md, process-topology.md, integration-patterns.md, resilience.md, architectural-anti-patterns.md, building-blocks.md, otp-design.md, test-strategy.md, networking-design.md, distributed-elixir.md, long-running-projects.md, and includes scripts (resource) and references (resource) and assets (resource) components.

What problem does it solve?

This Skill unit helps you plan and architect your Elixir applications with a focus on domain-driven design and best practices. It ensures that your application is well-structured, maintainable, and scalable.

Core Features & Use Cases

  • Architectural Decision Making: Provides a comprehensive guide for making architectural decisions before writing code.
  • Domain-Driven Design: Covers domain boundaries, data ownership, and context relationships.
  • Process and Supervision: Offers guidelines for designing process topologies and supervision strategies.
  • Communication and Integration: Provides guidance on inter-context communication patterns.
  • Resilience and Failure Handling: Helps design for failure and degradation.
  • Architectural Styles: Covers various architectural styles like hexagonal, modular monolith, CQRS, and event-driven.

Quick Start

Load the 'elixir-planning' skill to begin planning your Elixir application. Start with the "Architectural Principles" section and work your way through the various decision tables and subskills.

Frequently Asked Questions about elixir-planning

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

FAQPage Schema
How do I plan Elixir application architecture using domain-driven design?

Plan Elixir application architecture by establishing domain boundaries, defining data ownership, and mapping context relationships before writing code. This ensures the system is well-structured, maintainable, and scalable.

What is the best way to design process supervision and OTP topologies in Elixir?

Design process supervision and OTP topologies in Elixir by using structured guidelines for process creation and failure handling. This approach ensures resilient applications that gracefully degrade during errors.

How do I choose between architectural styles like CQRS and event-driven for Elixir?

Choose between architectural styles like CQRS, hexagonal, and event-driven for Elixir by consulting architectural decision tables. These tables help match specific communication patterns and integration needs to the right style.

When do I need to define domain boundaries and data ownership in Elixir applications?

Define domain boundaries and data ownership in Elixir applications when structuring complex systems to enforce context relationships. This separation is needed to maintain a maintainable and scalable codebase.

How do I handle inter-context communication and resilience in distributed Elixir?

Handle inter-context communication and resilience in distributed Elixir by applying specific integration patterns and failure-handling strategies. This ensures graceful degradation and robust communication across boundaries.