Skip to content

Latest commit

 

History

History
74 lines (57 loc) · 2.12 KB

CONTRIBUTING.md

File metadata and controls

74 lines (57 loc) · 2.12 KB

Contributing to Open Listling

How to contribute

  1. For any non-trivial contribution:
    1. Create an issue describing the intended change [1]
    2. A team member reviews your draft. Make the requested changes, if any.
  2. Create a topic branch
  3. Code...
  4. Create a pull request
  5. Travis CI runs the code quality checks. Fix the reported issues, if any.
  6. A team member reviews your contribution. Make the requested changes, if any.
  7. A team member merges your contribution \o/

[1] A good description contains:

  • If the API or web API is modified, any method signature (including the return value and possible errors) and object signature (including properties)
  • If the UI is modified, a simple sketch
  • If a new dependency is introduced, a short description of the dependency and possible alternatives and the reason why it is the best option

Requirements

A supported browser (e.g. Firefox) along with a WebDriver implementation (e.g. geckodriver) are required for the UI tests and must be set up on your system.

Installing development dependencies

To install the development dependencies for Open Listling, type:

make deps-dev

Running the unit tests

To run all unit tests, type:

make

Development utilities

The Makefile that comes with Open Listling provides additional utilities for different development tasks. To get an overview, type:

make help

Architecture overview

╭─────────╮
│ Server  │
├─────────┤
│ micro   │
│   ↓     │
│ Tornado │
│   ↓     │   ╭───────╮
│ Python  │ ⇒ │ Redis │
╰─────────╯   ╰───────╯
  ⇑
╭─────────────────────╮
│ Client              │
├─────────────────────┤
│ micro       bind.js │
│   ↓           ↓     │
│ JavaScript  HTML    │
╰─────────────────────╯