Skip to content
Back to skills

Elixir Conventions

ASecurity

Elixir code conventions covering Elixir 1.14+/OTP 25+, pattern matching, mix format, Credo/Dialyzer, ExUnit, ExDoc, OTP process patterns, and dependency security. Load when writing or reviewing Elixir code.

  • 146 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 5, 2026
ai-agentsgotestingsecuritydocumentation

Security analysis

A100/100

Scanned October 5, 2026

npx -y skills add Goldziher/ai-rulez --skill elixir-conventions --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Elixir Conventions?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Elixir Conventions
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/goldziher-elixir-conventions/badge)](https://www.skillsdirectory.com/skills/goldziher-elixir-conventions)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: elixir-conventions
description: Elixir code conventions covering Elixir 1.14+/OTP 25+, pattern matching, mix format, Credo/Dialyzer, ExUnit, ExDoc, OTP process patterns, and dependency security. Load when writing or reviewing Elixir code.
---

- Elixir 1.14+ OTP 25+, pattern matching extensively, `mix format` non-negotiable.
- Configure `.formatter.exs` with `:inputs` and `:import_deps` for consistent formatting across team.
- Linting: a linter (e.g., Credo `--strict`), type checking: Dialyzer (via `dialyxir`).
- Security: `mix_audit` for dependency CVE scanning, a SAST tool (e.g., Sobelow) for static analysis. Run both in CI.
- Testing: ExUnit with `describe` blocks, `doctest` for examples, a coverage tool (e.g., excoveralls) at 80%+.
- Documentation: ExDoc for generation, `@moduledoc` on all modules, `@doc` + `@spec` on public functions.
- `{:ok, value}` / `{:error, reason}` tuples — never raise for expected errors.
- `with` for multi-step ops, guard clauses for function overloading.
- OTP: GenServer for state, Supervisor for fault tolerance, `|>` pipe for transforms.
- Dependencies: commit `mix.lock`, `hex` with `~>` constraints.
- Anti-patterns: mutable state outside processes, long-running NIFs, `String.to_atom` with user input.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.