Contributing to BinomoAPI

BinomoAPI is community-maintained, and every fix, new asset, example or docs improvement helps other traders. Thank you for being here. ๐Ÿ’›

  1. Ways to help
  2. Development setup
  3. Before you open a pull request
  4. Pull request flow
  5. Previewing the docs
  6. Code of conduct

Ways to help

  • โญ Star the repo. Itโ€™s the easiest way to help others find the project.
  • ๐Ÿ› Report bugs with a minimal script and the redacted error output: open an issue.
  • ๐Ÿ“ˆ Update assets. Binomo changes its asset list over time; edit BinomoAPI/assets.json.
  • ๐Ÿงช Add examples to examples/.
  • ๐Ÿ“ Improve these docs. Every page has an โ€œEdit this page on GitHubโ€ link at the bottom.
  • ๐Ÿ’ฌ Answer questions in Discord.

Good first contributions: a public trade-result API, retry/reconnect helpers, and unit tests for the models and the asset helpers.

Development setup

git clone https://github.com/<your-username>/BinomoAPI.git
cd BinomoAPI
python -m venv .venv
source .venv/bin/activate            # Windows: .venv\Scripts\activate
pip install -e .
pip install -r requirements-dev.txt

Before you open a pull request

CI runs these checks on Python 3.8โ€“3.11. Run them locally first:

black BinomoAPI                      # format
flake8 BinomoAPI --select=E9,F63,F7,F82
mypy BinomoAPI --ignore-missing-imports
python -m build && twine check dist/*

Never commit credentials, auth tokens or .env files. Scripts that hit the real Binomo API must read credentials from environment variables.

Pull request flow

  1. Fork the repo and create a branch: git checkout -b fix/short-description.
  2. Make your change, and update the docs if behaviour changes.
  3. Run the checks above.
  4. Open a PR against main that describes what changed and why.

Previewing the docs

The documentation site is built by GitHub Pages from the docs/ folder using the Just the Docs theme. To preview it locally with Docker:

docker run --rm -it -p 4000:4000 -v "$PWD/docs:/site" -w /site ruby:3.1 \
  sh -c "gem install github-pages --no-document && jekyll serve --host 0.0.0.0"

Then open http://localhost:4000/BinomoAPI/.

To add a page, create docs/your-page.md with front matter that sets title, a search-friendly description and nav_order.

Code of conduct

Be kind, assume good intent and help newcomers. Harassment or spam gets you removed from the project and community.