Metadata-Version: 2.1
Name: pysui
Version: 0.51.2
Summary: SUI client Python SDK
License: Apache-2.0
Project-URL: changelog, https://github.com/FrankC01/pysui/blob/main/CHANGELOG.md
Project-URL: repository, https://github.com/FrankC01/pysui
Project-URL: issues, https://github.com/FrankC01/pysui/issues
Project-URL: documentation, https://pysui.readthedocs.io
Keywords: software development kit,sui,blockchain
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Programming Language :: Python
Classifier: Operating System :: OS Independent
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3 :: Only
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: dataclasses-json <0.7.0,>=0.6.3
Requires-Dist: PyYAML <6.2,>=6.0.1
Requires-Dist: httpx <0.28,>=0.26.0
Requires-Dist: h2 <5.0,>=4.1
Requires-Dist: websockets <13.0.0,>=10.0.0
Requires-Dist: typing-utils <0.2.0,>=0.1.0
Requires-Dist: canoser ==0.8.2
Requires-Dist: base58 <2.2.0,>=2.1.1
Requires-Dist: Deprecated <1.3.0,>=1.2.14
Requires-Dist: pysui-fastcrypto >=0.4.0
Requires-Dist: gql[aiohttp,requests,websockets] >=3.4.1

<p align="center">
  <img width="150" height="200" src="https://raw.githubusercontent.com/FrankC01/pysui/main/images//pysui_logo_color.png" alt='PySui'>
</p>

# pysui

Python Client SDK for Sui blockchain

- Supports _SUI 1.17.x RPC API_
- Backwards compatable to _Sui 1.12.x RPC API_

## pysui SDK Dependencies

- Rust (stable) for installation of Sui Binaries (optional) and building `pysui-fastcrypto` Rust wrapper (required)
- Python version >= 3.10

## pysui SDK current (github)

**Release-0.51.2**

See [CHANGELOG](https://github.com/FrankC01/pysui/blob/main/CHANGELOG.md)

## PyPi current

**Release-0.51.2**

- [Latest PyPi Version](https://pypi.org/project/pysui/)

## Sui GraphQL RPC service beta

MystenLabs announcement can be found [Here](https://github.com/mystenLabs/sui/issues/13700). This change transitions
from JSON RPC to GraphQL RPC.

With pysui 0.50.0 we released `pysui`'s initial alignment with MystenLabs strategy. The timeline of changes will keep up with the Timeline as noted in the Sui GraphQL annoucement.

Note: The MystenLabs/Sui GraphQL RPC is currently only available on testnet

pysui 0.51.2 contains support for our January 2024 target:

1. **_December 2023_**: Synchronous and asynchronous GraphQL clients (experimental) with intial 'read' queries parallel to current pysui read _Builders_. Also expose underlying GraphQL for users to craft their own queries.
2. January 2024: Continue with GraphQL and Builder parity changes. Mysten to roll out live data to devnet, testnet and mainnet.
3. February 2024: Deprecate pysui Builders and existing SuiClients and enable SuiClient GraphQL 'streaming' support.
4. Sometime in 2024: Remove Builders and Obsolete SuiClients and bump pysui to version 1.0.0.

You can read pysui documentation on graphql [here](https://pysui.readthedocs.io/en/latest/graphql.html)

### FULL Documentation

- [ReadTheDocs](https://pysui.readthedocs.io/en/latest/index.html)

### Changelog

See [CHANGELOG](https://github.com/FrankC01/pysui/blob/main/CHANGELOG.md)

### Issues and enhancement requests

We would appreciate using the [github issue log](https://github.com/FrankC01/pysui/issues) to let us know!

### Release/Publish Strategy

See [Strategies](https://github.com/FrankC01/pysui/blob/main/OP_STRATEGIES.md)

### Discord

Discord server [click here](https://discord.gg/uCGYfY4Ph4):

### Additions

There is a companion package called [pysui-gadgets](https://github.com/FrankC01/pysui_gadgets) with a few utilities and ge-gaws that you may find interesting. It is a separate package also on on PyPi.

### Local node support

We leverage [suibase](https://github.com/ChainMovers/suibase) for our testing and SuiConfig includes an option for interacting directly with local nodes created by `suibase`

## Ready to run

Requires:

- Linux or macos (x86_64 or Mx)
- Rust (stable) which also includes rustup and cargo
- python 3.10 or greater
- pkg-config
- libtool
- sui binaries to support `publish` Sui move packages

You will need `suibase` for interacting with local nodes, it is an indispensible addition to Sui developers tools!

### Setup environment

`python3 -m venv env`

If, instead, you want to work with repo latest source code then read [DEVELOP](https://github.com/FrankC01/pysui/blob/main/DEVELOP.md) from repo

### Activate

`source env/bin/activate`

or

`. env/bin/activate`

### Install `pysui`

`pip install pysui`

## Samples

See [samples](https://github.com/FrankC01/pysui/blob/main/samples/README.md)
