Skip to content

Latest commit

 

History

History
85 lines (59 loc) · 2.17 KB

File metadata and controls

85 lines (59 loc) · 2.17 KB

Contributing

Thank you for being interested in contributing to Shortify. There are many ways you can contribute to the project:

Reporting Bugs or Other Issues

Try to be more descriptive as you can and in case of a bug report, provide as much information as possible, for example:

  • OS platform
  • Python version
  • Installed dependencies and versions (python -m pip freeze)
  • Code snippet
  • Error traceback

You should always try to reduce any examples to the simplest possible case that demonstrates the issue.

Development

Prerequisites:

  • Python version 3.8 or later.
  • Poetry for dependency management. You should know basic stuff about handling dependencies using poetry command line interface.

To start developing Shortify, create a fork of the Shortify repository on GitHub.

Then clone your fork with the following command replacing YOUR-USERNAME with your GitHub username:

git clone https://github.com/YOUR-USERNAME/Shortify

You can now install the project and its dependencies using:

cd shortify
sudo chmod +x scripts/*
scripts/install

Testing and Linting

We use custom shell scripts to automate testing, linting, and documentation building workflow.

To run the tests, use:

scripts/test

Any additional arguments will be passed to pytest. See the pytest documentation for more information.

For example, to run a single test script:

scripts/test tests/test_application.py

To run the code auto-formatting:

scripts/lint

Lastly, to run code checks separately (they are also run as part of scripts/test), run:

scripts/check

Taken from Starlette's contribution guidelines.