40f024b477b66eca290fff0b46e34c10834e6768
Verified all 17 file:line citations against elixir-lang/elixir HEAD. Fixed 10 citations where line numbers had shifted due to upstream changes: - patterns/genserver.md: agent.ex:246 → 279 (start_link spec) - patterns/process-design.md: task.ex:282 → 327 (child_spec) - smells/anti-patterns.md: registry_test.exs:28 → 29, gen_server_test.exs:166 → 164, test_helper.exs:98 → 99 - smells/common-mistakes.md: registry_test.exs:28 → 29, callbacks.ex:423 → 433, task_test.exs:297,305,315,330 → 300,308,316,327, supervisor_test.exs:278 → 289, callbacks.ex:277 → 520
Elixir Patterns
Idiomatic Elixir patterns extracted from the Elixir source code with verified file:line citations.
Structure
patterns/— Core patterns (GenServer, error handling, data transforms, processes, testing, docs, typespecs, macros, behaviours, modules)smells/— Anti-patterns and common mistakes the Elixir team avoidschangelog/— Daily digest of merged Elixir PRs with discussion summaries
Philosophy
These rules are derived from what the Elixir source code actually does, not opinions or blog posts. Every pattern cites specific files and line numbers.
When unsure how to do something in Elixir, look at how Elixir core does it. This is how we define what "idiomatic" actually means.
Languages
Markdown
100%