- For any non-trivial contribution:
- Create an issue describing the intended change [1]
- A team member reviews your draft. Make the requested changes, if any.
- Create a topic branch
- Code...
- Create a pull request
- Travis CI runs the code quality checks. Fix the reported issues, if any.
- A team member reviews your contribution. Make the requested changes, if any.
- 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
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.
To install the development dependencies for Open Listling, type:
make deps-dev
To run all unit tests, type:
make
The Makefile that comes with Open Listling provides additional utilities for different development tasks. To get an overview, type:
make help
╭─────────╮
│ Server │
├─────────┤
│ micro │
│ ↓ │
│ Tornado │
│ ↓ │ ╭───────╮
│ Python │ ⇒ │ Redis │
╰─────────╯ ╰───────╯
⇑
╭─────────────────────╮
│ Client │
├─────────────────────┤
│ micro bind.js │
│ ↓ ↓ │
│ JavaScript HTML │
╰─────────────────────╯