What problem does it solve?
This skill helps Elixir developers design and reason about Ecto-based data models, schemas, contexts, and their interactions. It guides decisions on where to place responsibilities, how to model associations, and how to structure data access across bounded contexts.
Core Features & Use Cases
- Context-oriented design: Define bounded contexts and map domain concepts to Ecto schemas, migrations, and Repo interactions.
- Association & queries guidance: Plan has_many/belongs_to relationships, preload strategies, and query composition with Ecto.Query.
- Migration & changeset best practices: Recommend migrations, changesets, and transactions (Ecto.Multi) to enforce invariants.
- Use Case Scenarios: When adding a new table, creating a context, or optimizing data access patterns to avoid N+1 queries.
Quick Start
Request a high-level plan for adding a new table and a context, including schemas, associations, and a sample query, without writing full implementation details.