Code Monkey home page Code Monkey logo

dragonchain-sdk-python's Introduction

Dragonchain Logo

Dragonchain

Build Status Test Coverage Code Style Black License Banana Index

The Dragonchain platform simplifies the integration of real business applications onto a blockchain. Providing features such as easy integration, protection of business data, fixed 5 second blocks, currency agnosticism, and public blockchain interoperability, Dragonchain shines a new and interesting light on blockchain technology.

No blockchain expertise required!

๐Ÿ Getting Started

For getting started with Dragonchain, we recommend visiting docs.dragonchain.com

Those docs go over the friendliest overview for understanding, installing, and using Dragonchain.

๐Ÿ”— Quick Links

๐Ÿ“ Documentation

Documentation for this specific repository are available here.

This documentation is intended for developers wishing to learn about and contribute to the Dragonchain core platform itself.

For interaction with the Dragonchain, we recommend using the Getting Started link instead.

You can also view one of our SDKs (or their docs) to start interacting with a Dragonchain:

๐Ÿ–ฅ๏ธ Development

Dragonchain is implemented in Python 3, packaged into container images with Docker, and intended to be run on Kubernetes (at the moment).

The tools.sh script is used to assist in various development functions such as installing dependencies, automatically formatting/linting code, running tests, etc. Simply run ./tools.sh with no parameters to view what it can do.

In order to develop locally you should be able to run ./tools.sh full-test and have all checks pass. For this, a few requirements should be met:

  1. Ensure that you have python 3.8 installed locally
  2. Install OS dependencies for building various python package dependencies:
    • On an arch linux system (with pacman): ./tools.sh arch-install
    • On a debian-based linux system (with apt): ./tools.sh deb-install (Note on newer Ubuntu installations you may need to install libsecp256k1-dev if the secp256k1 python package fails to build)
    • On a Mac (with brew): ./tools.sh mac-install
  3. Install the python requirements: ./tools.sh pip-install (Note this will install the python packages to the current user's site-packages. For a python venv, follow the steps below)
  4. Helm is required to be installed for linting the helm chart.
  5. yq is required to be installed for building the docs, as it parses the helm chart's version to update the docs dynamically.

Using a Python Virtual Environment

It is highly recommended to use a python virtual environment rather than simply installing the python package requirements to your global environment. This allows the required packages for this project to be separated from the rest of the (potentially conflicting) packages from the rest of the system.

In order to do this, instead of step 3 above, perform the following steps:

  1. Ensure you have python venv installed, and run python3.8 -m venv .venv
  2. Activate the virtual environment in your shell by running source .venv/bin/activate
  3. Upgrade the setup dependencies for the virtual environment: pip install -U pip setuptools
  4. Install the core dependencies: pip install -r requirements.txt
  5. Install the dev dependencies: pip install -U -r dev_requirements.txt

Other Information

For more information, including a deeper dive on the architecture/code structure, please read the docs.

๐Ÿš€ Contributing

Want to make some money for helping the project? We have project, bug, and security bounty programs which we invite anyone to participate in. Details for these programs can be found here:

For more info on contributing, please read the contributing document.

โœ”๏ธ Support

dragonchain-sdk-python's People

Contributors

cheeseandcereal avatar deanshelton913 avatar drigby26 avatar noahgribbin avatar rdaquilante avatar regan-karlewicz avatar wingman4l7 avatar wolfpack94 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dragonchain-sdk-python's Issues

Officially Support Python 3.8

This SDK should officially support python 3.8, which includes setting the package metadata, and adding tests in travis to run on python 3.8

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.