Skip to main content

Pythonic Bridge to Solana Programs

Project description

Upload Python Package codecov

solpyb

Pythonic Bridge to Solana Programs.

Overview

The project simplifies executing and getting responses from Solana Programs (a.k.a Smart Contracts), that are running on the Solana Blockchain.

Setup

pip install solpyb

A Simple Example

    import asyncio
    from solpyb import SolBase, load_wallet


    class MyProgram(SolBase):
        slope: float
        intercept: float


    contract = MyProgram(
        program_id="64ZdvpvU73ig1NVd36xNGqpy5JyAN2kCnVoF7M4wJ53e", payer=load_wallet()
    )
    if asyncio.run(contract([10.5, 20.7, 30.8, 40.12, 50.20, 60.0])):
        print(f"slope: {contract.slope} intercept {contract.intercept}")

(This script is complete, it should run "as is")

What's going on here:

  • "64ZdvpvU73ig1NVd36xNGqpy5JyAN2kCnVoF7M4wJ53e" is a Solana Program (a.k.a Smart Contract) that performs a Linear regression on set of points and returns the slope and intercept as floats.
  • load_wallet() loads the default wallet keys (.config/solana/id.json), as the payer for the transaction.
  • MyProgram class implement a Pythonic wrapper class. Calling the call creates a transaction on chain and result is returned,
  • SolBase populates slope and intercept with the values returned from the Blockchain.

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

solpyb-0.0.2.tar.gz (13.7 kB view hashes)

Uploaded Source

Built Distribution

solpyb-0.0.2-py3-none-any.whl (14.4 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