Skip to content

Development Guide

Table of Contents

Contribution

Any contribution is welcome! But please fire an issue before you start working on it.

The principle is to Keep this project simple and maintainable:

  • Use type annotations whenever possible
  • Adding features for common use cases
  • Minimal dependencies for each module

Naming convention

Python

Follow PEP-8 for python code style.
Use snake_case for command line arguments.

Javascript

I follow Javascript naming convention, which is:

  • lowerCamelCase for variables, properties, functions and methods.
  • UpperCamelCase for classes.

Http path

use lowercase-with-dash for http path, e.g. /api/v1/your-path

Build for distribution

Please run the following commands to build for the distribution:

bash
# build necessary files
make build

# fetch third party libs
lrs-utils update_pdfjs

# build for distribution
python setup.py sdist