Skip to main content

Frontrunner SDK

Project description

Frontrunner SDK

Frontrunner is the first zero gas fee, decentralized sports prediction market built on blockchain where you get the best odds with no house edge.

This is an SDK which allows you to interact with our public-facing API easily via Python.

Developer

Note: this assumes OSX

Prerequisite Installation

Install brew. This will be used to install other required tooling.

Install Visual Studio Code. This repository has configuration for vscode to make the development experience uniform and smooth for everyone.

brew install --cask visual-studio-code

Install pants. Pants is a generic build tool that supports multiple languages and tools. Both local builds and CI builds use Pants.

brew install pantsbuild/tap/pants

Clone the repository. Then, open up the repository in vscode. Install the recommended extensions for this workspace. Restart vscode.

In a terminal at the root of the repository, test your setup by running...

pants lint ::
pants check ::
pants test ::

To make vscode use the correct Python environment, in a terminal, run...

pants export ::

To activate the virtual environment in a shell, run...

bash ./dist/export/python/virtualenv/3.8.16/bin/activate

Codegen

Generate Python code using the remote openapi.json and swagger-codegen.

Installation

brew install swagger-codegen

Adding a Client

  1. Add a dir under openapi
  2. Put the API's openapi.json in that directory
  3. Run ./scripts/codegen.sh

Getting Help

To see additional options:

swagger-codegen generate --help
swagger-codegen config-help -l python

Running Tests

To test everything, run...

pants test ::

To test a single file, run...

pants test --no-use-coverage ${file}

Auto Format Code

To format everything and fix the code for Flake8, run...

pants fmt ::
pants fix ::

Local Testing via REPL

To get a Python shell to test code, comment out the python_distribution target in /BUILD. Then run...

pants repl ::

Viewing Docs

To view docs generated from the docs folder, run...

./scripts/slate.sh serve

Then, in a browser, open http://localhost:8000.

Building Docs Locally

To build docs locally, run...

./scripts/slate.sh build

Deployments and Releases

Developer Documentation

The slate documentation deploys on every master branch merge.

Release Process

  1. Create a tagged release with an appropriate semantic version eg. if the current version is 0.4.2, the next patch version would be 0.4.3, or a next minor version would be 0.5.0. Use the New Release Form to create the release. Make sure it is marked as pre-release.
  2. Install the SDK from TestPyPI: pip install --upgrade --index-url https://test.pypi.org/simple/ frontrunner-sdk.
  3. Edit the release -- remove the checkmark from "Set as a pre-release" and save.
  4. Install the SDK from PyPI (production): pip install --upgrade frontrunner-sdk

Test PyPI: https://test.pypi.org/project/frontrunner-sdk/ Prod PyPI: https://pypi.org/project/frontrunner-sdk/

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

frontrunner-sdk-0.8.4.tar.gz (48.0 kB view hashes)

Uploaded Source

Built Distribution

frontrunner_sdk-0.8.4-py3-none-any.whl (93.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page