Packages
surgex
5.1.0
6.0.1
6.0.0
5.1.1
5.1.0
5.0.0
5.0.0-git-015aa39a
4.15.2
4.15.1
4.15.1-git-98b3
4.15.0
4.15.0-git-943e
4.15.0-git-5806
4.14.1
4.14.0
4.13.1
4.13.0
4.12.0
4.11.0
4.11.0-git-97d4
4.11.0-git-14c8
4.10.0
4.10.0-git-37f2
4.9.0
4.9.0-git-9d5f
4.8.1-git-80a7
4.8.0
4.8.0-git-fbda
4.8.0-git-e058
4.7.0
4.7.0-git-5414
4.6.1
4.6.0
4.5.0
4.4.0
4.3.0
4.2.1
4.2.0
4.1.1
4.1.1-git-9f6b
4.1.1-git-6f0cd
4.1.0
4.1.0-git-e934
4.1.0-git-8c28
4.1.0-git-56a9
4.1.0-git-55fd
4.0.0
3.2.8
3.2.7
3.2.6
3.2.5
3.2.4
3.2.3
3.2.2
3.2.1
3.2.0
retired
3.1.0
3.0.0
2.24.1
2.24.0
retired
2.23.0
2.22.0
2.21.0
2.20.1
2.20.0
2.19.0
2.18.1
2.18.0
2.17.0
2.16.0
2.15.0
2.14.0
2.13.0
2.12.1
2.12.0
2.11.0
2.10.0
2.9.0
2.8.0
2.7.0
2.6.0
2.5.1
2.5.0
2.4.0
retired
2.3.0
2.2.1
2.2.0
2.1.1
2.1.0
2.0.0
1.6.0
1.5.2
1.5.1
1.5.0
1.4.0
1.3.1
retired
1.3.0
retired
1.2.1
1.2.0
1.1.0
1.0.0
0.5.2
0.5.1
0.5.0
0.4.3
0.4.2
0.4.1
0.4.0
0.3.3
0.3.2
0.3.1
0.3.0
0.2.0
0.1.0
All Things Elixir @ Surge Ventures Inc, the creators of Fresha
Current section
Files
Jump to
Current section
Files
lib/surgex/guide/guide.ex
defmodule Surgex.Guide do
@moduledoc """
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:
- `Surgex.Guide.CodeStyle`: basic code style and formatting guidelines
- `Surgex.Guide.SoftwareDesign`: higher level application design and engineering guidelines
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.
"""
end