OpenViSTAI · Agents · Blockchain · Crypto
Menu
Developer Tools

Starknet.py

Starknet.py is an open-source Python SDK for building applications that interact with Starknet through full-node clients. It provides documented interfaces for reading blockchain state, adding transactions, representing accounts, and calling contract functions.

Independent OpenViST project profile, based on linked sources.

Starknet.py — OpenViST project profile in Developer Tools.
OpenViST project illustration. See the linked sources for product details.
Understand the project

Practical overview

When it fits

Use Starknet.py when a Python application needs a library-level connection to Starknet for reads, transaction submission, or account and contract operations.

Who it is for

  • Python developers building applications that communicate with Starknet.
  • Developers who need to query Starknet state or submit transactions from Python.
  • Teams working with Starknet accounts and contracts through a full-node client.

Documented uses

  • Request blockchain data such as a block from a Starknet full node.
  • Add transactions to Starknet through the client and account interfaces.
  • Create account objects using an address and a key pair or signer.
  • Declare and deploy contracts, invoke contract functions, and retrieve contract data.
Before you choose

Requirements & limits

The project is a public GitHub repository identified as MIT-licensed. Installation instructions vary by operating system.

  • The SDK is written in Python and connects to a full node; it is not itself node infrastructure.
  • The README documents both asynchronous and synchronous client usage, with asynchronous use recommended.
  • Account operations require account-specific inputs such as an address and a key pair or signer.
  • Contract declaration and deployment examples require compiled contract material, a class hash and resource bounds.

Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.

Source-based practical guide

Declare and deploy a contract with an account

Follow the README example for declaring and deploying a contract through Starknet.py.

Before you start

  • A FullNodeClient connected to a Starknet full node.
  • An Account configured with an address and either a key pair or signer.
  • Compiled contract material and its class hash.
  • Resource bounds for the declaration and deployment calls.

Steps

  1. Create the account using the documented Account constructor or deployment method.

  2. Call Contract.declare_v3 with the account, compiled contract, class hash and resource bounds.

  3. Wait for declaration acceptance, then deploy with deploy_v3 and wait for acceptance.

Expected outcome

The example obtains a deployed contract object after the deployment transaction is accepted.

Guide limitations

  • The example requires valid account credentials, compiled contract inputs, resource bounds and a suitable node endpoint.
  • The source documents the workflow but does not establish a live deployment result.
Evidence and transparency

Sources & review

Source record details
Source availability
Active
Sources checked
9 October 2026
Original website title
software-mansion/starknet.py · Official homepage title · retained in its source language