swe-programming-elixir-phoenix

Phoenix Framework coding standards from authoritative docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ documentation

16 stars

Best use case

swe-programming-elixir-phoenix is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Phoenix Framework coding standards from authoritative docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ documentation

Teams using swe-programming-elixir-phoenix should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/swe-programming-elixir-phoenix/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/development/swe-programming-elixir-phoenix/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/swe-programming-elixir-phoenix/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How swe-programming-elixir-phoenix Compares

Feature / Agentswe-programming-elixir-phoenixStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Phoenix Framework coding standards from authoritative docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ documentation

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Phoenix Framework Coding Standards

## Purpose

Progressive disclosure of Phoenix Framework standards for agents writing Phoenix applications.

**Authoritative Source**: [docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/README.md](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/README.md)

**Usage**: Auto-loaded for agents when writing Phoenix Framework code. Provides quick reference to Phoenix contexts, channels, REST APIs, and web patterns.

**Foundation**: Requires Elixir skill (swe-programming-elixir). Phoenix Framework is built on Elixir/OTP foundations.

## Prerequisite Knowledge

**CRITICAL**: This skill provides **OSE Platform Phoenix Framework standards**, not Phoenix tutorials.

**You MUST complete both Elixir AND Phoenix learning paths**:

**1. Elixir Foundation** (prerequisite for Phoenix):

- [Elixir Learning Path](../../../apps/ayokoding-web/content/en/learn/software-engineering/programming-languages/elixir/) - Initial setup, language overview (0-95% coverage)
- [Elixir By Example](../../../apps/ayokoding-web/content/en/learn/software-engineering/programming-languages/elixir/by-example/) - 75+ annotated code examples
- [Elixir In the Field](../../../apps/ayokoding-web/content/en/learn/software-engineering/programming-languages/elixir/in-the-field/) - Production patterns
- [Elixir Release Highlights](../../../apps/ayokoding-web/content/en/learn/software-engineering/programming-languages/elixir/release-highlights/) - Elixir 1.12-1.18 features

**2. Phoenix Framework Learning Path**:

- [Phoenix Initial Setup](../../../apps/ayokoding-web/content/en/learn/software-engineering/platform-web/tools/elixir-phoenix/initial-setup.md) - Environment setup
- [Phoenix Overview](../../../apps/ayokoding-web/content/en/learn/software-engineering/platform-web/tools/elixir-phoenix/overview.md) - Contexts, controllers, views
- [Phoenix By Example](../../../apps/ayokoding-web/content/en/learn/software-engineering/platform-web/tools/elixir-phoenix/by-example/) - 75+ examples
- [Phoenix In-the-Field](../../../apps/ayokoding-web/content/en/learn/software-engineering/platform-web/tools/elixir-phoenix/in-the-field/) - 30 production guides

**Documentation Separation**:

- **AyoKoding Phoenix** - "How to use Phoenix Framework" (educational, universal patterns)
- **docs/explanation/elixir-phoenix** - "How to use Phoenix in OSE Platform" (repository conventions)

**What this skill covers**: OSE Platform Phoenix Framework configuration, context patterns, channel usage, REST API design, data access patterns.

**What this skill does NOT cover**: Phoenix Framework basics, OTP fundamentals (those are in ayokoding-web).

## Quick Standards Reference

### Context Patterns

- Use contexts to group related functionality
- Keep contexts focused and bounded
- Contexts expose public API, hide implementation
- Use schemas within contexts for data structures

### Controllers and Views

- Keep controllers thin, delegate to contexts
- Use action fallback for error handling
- Render JSON with Jason for APIs
- Use Phoenix.HTML helpers for templates

### Routing

- Use resources for RESTful routes
- Scope routes by authentication requirements
- Use plugs for request pipeline customization
- Apply rate limiting at router level

### Channels and PubSub

- Use channels for real-time bidirectional communication
- Leverage Phoenix.PubSub for process communication
- Implement presence tracking for user activity
- Handle channel errors gracefully

### Data Access with Ecto

- Use Ecto schemas for data modeling
- Apply changesets for data validation
- Write composable Ecto queries
- Use Repo for database operations
- Apply database transactions for consistency

### REST API Design

- Use JSON:API or GraphQL conventions
- Implement proper HTTP status codes
- Apply authentication with Guardian or Pow
- Version APIs with URL prefixes or headers
- Document APIs with ExDoc

## Comprehensive Documentation

For detailed guidance, refer to the 15 Phoenix Framework standards files:

**Core Patterns**:

- [Idioms](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__idioms.md) - Phoenix-specific patterns
- [Best Practices](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__best-practices.md) - Framework standards
- [Anti-Patterns](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__anti-patterns.md) - Common mistakes

**Architecture & Configuration**:

- [Configuration](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__configuration.md)
- [Contexts](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__contexts.md)
- [Channels](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__channels.md)

**Data & Web**:

- [Data Access](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__data-access.md)
- [REST APIs](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__rest-apis.md)

**Quality & Operations**:

- [Security](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__security.md)
- [Testing](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__testing.md)
- [Performance](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__performance.md)
- [Observability](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__observability.md)
- [Deployment](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__deployment.md)

**Maintenance**:

- [Version Migration](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/ex-soen-plwe-to-elph__version-migration.md)

## Related Skills

- swe-programming-elixir - Elixir language fundamentals (prerequisite)
- docs-applying-content-quality - Content quality standards
- repo-practicing-trunk-based-development - Git workflow

## References

- [Phoenix Framework README](../../../docs/explanation/software-engineering/platform-web/tools/elixir-phoenix/README.md)
- [Elixir README](../../../docs/explanation/software-engineering/programming-languages/elixir/README.md)
- [Functional Programming](../../../governance/development/pattern/functional-programming.md)

Related Skills

shader-programming-glsl

16
from diegosouzapw/awesome-omni-skill

Expert guide for writing efficient GLSL shaders (Vertex/Fragment) for web and game engines, covering syntax, uniforms, and common effects.

programming-ruby

16
from diegosouzapw/awesome-omni-skill

Best practices when developing in Ruby codebases

moai-lang-elixir

16
from diegosouzapw/awesome-omni-skill

Elixir 1.17+ development specialist covering Phoenix 1.7, LiveView, Ecto, and OTP patterns. Use when developing real-time applications, distributed systems, or Phoenix projects.

elixir-pro

16
from diegosouzapw/awesome-omni-skill

Write idiomatic Elixir code with OTP patterns, supervision trees, and Phoenix LiveView. Masters concurrency, fault tolerance, and distributed systems.

c-programming-guidelines

16
from diegosouzapw/awesome-omni-skill

Apply for c-programming-guidelines. --- description: globs: **/*.c,**/*.cpp,**/*.h,**/*.hpp,**/*.cxx,CMakeLists.txt,*.cmake,conanfile.txt,Makefile,**/*.cc

Asyncio Programming

16
from diegosouzapw/awesome-omni-skill

Master asynchronous programming with asyncio, async/await, concurrent operations, and async frameworks

async-programming

16
from diegosouzapw/awesome-omni-skill

Concurrent operations with asyncio and Tokio, focusing on race condition prevention, resource safety, and performance

async-programming-skill

16
from diegosouzapw/awesome-omni-skill

This skill provides async/await patterns and best practices for concurrent programming

ash-phoenix

16
from diegosouzapw/awesome-omni-skill

AshPhoenix integration guidelines for using Ash Framework with Phoenix. Use when working with AshPhoenix.Form, creating forms backed by Ash resources, handling nested forms, union types in forms, or integrating Ash actions with Phoenix LiveViews. Covers form creation, validation, submission, and error handling patterns.

functional-programming-preference

16
from diegosouzapw/awesome-omni-skill

Promotes functional programming and composition over inheritance while maintaining consistency with WordPress best practices.

asynchronous-programming-preference

16
from diegosouzapw/awesome-omni-skill

Favors the use of async and await for asynchronous programming in Python.

phoenix-github

16
from diegosouzapw/awesome-omni-skill

Manage GitHub issues, labels, and project boards for the Arize-ai/phoenix repository. Use when filing roadmap issues, triaging bugs, applying labels, managing the Phoenix roadmap project board, or querying issue/project state via the GitHub CLI.