Surgex.Guide (Surgex v5.0.0) View Source

Official style guide for Elixir and Phoenix projects at Surge Ventures.

NOTE: Deprecated in favor of https://github.com/surgeventures/elixir.

The rules in this guide aim to provide a consistent, convention-driven coding experience and an easily readable, long-term maintainable code as a result. It's divided into the following modules:

Here's what you can expect from this guide:

  • Elixir-friendly experience: rules are written as Elixir functions with @doc clauses and compiled by ExDoc to a documentation easily browsable by anyone familiar to HexDocs

  • One-line summary for each rule: each rule's @doc starts with a descriptive one-line summary, which is compiled into a clean list of rules (the Summary section)

  • Reasoning for every rule: it's only fair to make the reasoning behind the rules clear for those who use them and leave the door open for discussions and improvements

  • Examples for every rule: even for the simplest rules, an examples of proper and inproper use are provided in order to make it clear what it's all about in a matter of seconds

Above all rules, use your common sense to solve every coding situation in a way that's consistent, readable and maintainable. Follow your instincts and keep making this guide better in places where it lacks.