Skip to content

graze/standards

Repository files navigation

Graze Coding Standards

This documentation is also available in mkdocs.

This document describes the coding standards of Graze across its common languages to be adhered to and enforced by the Graze tech team, any violation of standards must be justified by the developer and exceptions are allowed for cases where it is unavoidable, such as in the case of third-party integrations.

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.

General

  1. Indent size MUST be 4 space characters and MUST NOT be the tab character.
  2. All files MUST end with a blank new line (the new line character).
  3. All files MUST use the Unix LF (linefeed) line ending.
  4. There MUST NOT be trailing whitespace.

Git

  1. Repo names SHOULD be all lowercase with hyphens (-) to separate words where appropriate.
  2. Internal-only libraries SHOULD be prefixed with "graze-".
  3. It is RECOMMENDED to follow the style guide mantained in agis-/git-style-guide.

Languages

  1. PHP
  2. HTML
  3. Javascript
  4. Python
  5. SQL
  6. CSS/Less
  7. Markdown
  8. Golang

Open Source

  1. Project
  2. PHP

Environment

  1. AWS
  2. Docker

Visual

  1. Images

Development

You can test mkdocs by calling:

make docs-test

This will start a development server in docker on port 8000.