<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
[![Downloads](https://static.pepy.tech/badge/pysui/month)](https://pepy.tech/project/pysui)
Python Client SDK for Sui blockchain
## pysui SDK Dependencies
- Rust (stable) for installation of Sui Binaries (optional) and building `pysui-fastcrypto` Rust wrapper (required)
- Python version >= 3.10
**Note**: If moving from 0.51.0 or earlier it is recommended to start a new virtual environment and installing from PyPi!
## pysui SDK current (github)
**Release-0.60.0**
- Supports _SUI 1.26.x RPC API_
- Backwards compatable to _Sui 1.18.x RPC API_
See [CHANGELOG](https://github.com/FrankC01/pysui/blob/main/CHANGELOG.md)
## PyPi current
**Release-0.59.0 - Released 2024-05-15**
- Supports _SUI 1.26.x RPC API_
- Backwards compatable to _Sui 1.18.x RPC API_
- [Latest PyPi Version](https://pypi.org/project/pysui/)
## Sui GraphQL RPC beta
MystenLabs announcement can be found [Here](https://github.com/mystenLabs/sui/issues/13700). This change transitions
from JSON RPC to GraphQL RPC.
Note: MystenLabs/Sui GraphQL RPC is available on devnet, testnet and mainnet
### Sui GraphQL IDEs
[Mainnet](https://sui-mainnet.mystenlabs.com/graphql)
[Testnet](https://sui-testnet.mystenlabs.com/graphql)
[Devnet](https://sui-devnet.mystenlabs.com/graphql/stable)
### pysui GraphQL support
With pysui 0.50.0 we released beta `pysui`'s initial alignment with MystenLabs strategy. The timeline of changes will keep up with the Timeline as noted in the Sui GraphQL annoucement. We are not more stable and have Client and TransactionBuilder running against Sui GraphQL.
We continue to monitor and support changes as they evolve.
#### Examples
- [Synchronous Client](https://github.com/FrankC01/pysui/blob/v0.59.0/pgql_s_example.py) - Examples for all supported QueryNode queries and mutations
- [Asynchronous Client](https://github.com/FrankC01/pysui/blob/v0.59.0/pgql_a_example.py) - Examples for all supported QueryNode queries and mutations
- [Synchronous TransactionBuilder](https://github.com/FrankC01/pysui/blob/v0.59.0/pgql_s_ptb.py) - Example of new pysui Transaction Builder leveraging Sui GraphQL
You can read pysui documentation on graphql beta [here](https://pysui.readthedocs.io/en/latest/graphql.html)
#### Known Issues
- Sui GraphQL fails fetching ProtocolConfiguration versions greater than 39
- No subscription support at this time
### 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)
Raw data
{
"_id": null,
"home_page": null,
"name": "pysui",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "software development kit, sui, blockchain",
"author": null,
"author_email": null,
"download_url": null,
"platform": null,
"description": "<p align=\"center\">\n <img width=\"150\" height=\"200\" src=\"https://raw.githubusercontent.com/FrankC01/pysui/main/images//pysui_logo_color.png\" alt='PySui'>\n</p>\n\n# pysui\n\n[![Downloads](https://static.pepy.tech/badge/pysui/month)](https://pepy.tech/project/pysui)\n\nPython Client SDK for Sui blockchain\n\n## pysui SDK Dependencies\n\n- Rust (stable) for installation of Sui Binaries (optional) and building `pysui-fastcrypto` Rust wrapper (required)\n- Python version >= 3.10\n\n**Note**: If moving from 0.51.0 or earlier it is recommended to start a new virtual environment and installing from PyPi!\n\n## pysui SDK current (github)\n\n**Release-0.60.0**\n\n- Supports _SUI 1.26.x RPC API_\n- Backwards compatable to _Sui 1.18.x RPC API_\n\nSee [CHANGELOG](https://github.com/FrankC01/pysui/blob/main/CHANGELOG.md)\n\n## PyPi current\n\n**Release-0.59.0 - Released 2024-05-15**\n\n- Supports _SUI 1.26.x RPC API_\n- Backwards compatable to _Sui 1.18.x RPC API_\n\n- [Latest PyPi Version](https://pypi.org/project/pysui/)\n\n## Sui GraphQL RPC beta\n\nMystenLabs announcement can be found [Here](https://github.com/mystenLabs/sui/issues/13700). This change transitions\nfrom JSON RPC to GraphQL RPC.\n\nNote: MystenLabs/Sui GraphQL RPC is available on devnet, testnet and mainnet\n\n### Sui GraphQL IDEs\n\n [Mainnet](https://sui-mainnet.mystenlabs.com/graphql)\n\n [Testnet](https://sui-testnet.mystenlabs.com/graphql)\n\n [Devnet](https://sui-devnet.mystenlabs.com/graphql/stable)\n\n### pysui GraphQL support\n\nWith pysui 0.50.0 we released beta `pysui`'s initial alignment with MystenLabs strategy. The timeline of changes will keep up with the Timeline as noted in the Sui GraphQL annoucement. We are not more stable and have Client and TransactionBuilder running against Sui GraphQL.\n\nWe continue to monitor and support changes as they evolve.\n\n#### Examples\n\n - [Synchronous Client](https://github.com/FrankC01/pysui/blob/v0.59.0/pgql_s_example.py) - Examples for all supported QueryNode queries and mutations\n - [Asynchronous Client](https://github.com/FrankC01/pysui/blob/v0.59.0/pgql_a_example.py) - Examples for all supported QueryNode queries and mutations\n - [Synchronous TransactionBuilder](https://github.com/FrankC01/pysui/blob/v0.59.0/pgql_s_ptb.py) - Example of new pysui Transaction Builder leveraging Sui GraphQL\n\nYou can read pysui documentation on graphql beta [here](https://pysui.readthedocs.io/en/latest/graphql.html)\n\n#### Known Issues\n- Sui GraphQL fails fetching ProtocolConfiguration versions greater than 39\n- No subscription support at this time\n\n\n### FULL Documentation\n\n- [ReadTheDocs](https://pysui.readthedocs.io/en/latest/index.html)\n\n### Changelog\n\nSee [CHANGELOG](https://github.com/FrankC01/pysui/blob/main/CHANGELOG.md)\n\n### Issues and enhancement requests\n\nWe would appreciate using the [github issue log](https://github.com/FrankC01/pysui/issues) to let us know!\n\n### Release/Publish Strategy\n\nSee [Strategies](https://github.com/FrankC01/pysui/blob/main/OP_STRATEGIES.md)\n\n### Discord\n\nDiscord server [click here](https://discord.gg/uCGYfY4Ph4):\n\n### Additions\n\nThere 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.\n\n### Local node support\n\nWe leverage [suibase](https://github.com/ChainMovers/suibase) for our testing and SuiConfig includes an option for interacting directly with local nodes created by `suibase`\n\n## Ready to run\n\nRequires:\n\n- Linux or macos (x86_64 or Mx)\n- Rust (stable) which also includes rustup and cargo\n- python 3.10 or greater\n- pkg-config\n- libtool\n- sui binaries to support `publish` Sui move packages\n\nYou will need `suibase` for interacting with local nodes, it is an indispensible addition to Sui developers tools!\n\n### Setup environment\n\n`python3 -m venv env`\n\nIf, instead, you want to work with repo latest source code then read [DEVELOP](https://github.com/FrankC01/pysui/blob/main/DEVELOP.md) from repo\n\n### Activate\n\n`source env/bin/activate`\n\nor\n\n`. env/bin/activate`\n\n### Install `pysui`\n\n`pip install pysui`\n\n## Samples\n\nSee [samples](https://github.com/FrankC01/pysui/blob/main/samples/README.md)\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "SUI client Python SDK",
"version": "0.60.0",
"project_urls": {
"changelog": "https://github.com/FrankC01/pysui/blob/main/CHANGELOG.md",
"documentation": "https://pysui.readthedocs.io",
"issues": "https://github.com/FrankC01/pysui/issues",
"repository": "https://github.com/FrankC01/pysui"
},
"split_keywords": [
"software development kit",
" sui",
" blockchain"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "becb8343b6b91fdbce1a2297e7d7973515001b7ea389c319eadb339227d2de22",
"md5": "9157ce299a133ae14ef2417d3cad1d6c",
"sha256": "e6eb502fcd65b822a69bcf915f23f689882d64822419a8dd0e9d5e6668225495"
},
"downloads": -1,
"filename": "pysui-0.60.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9157ce299a133ae14ef2417d3cad1d6c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 234496,
"upload_time": "2024-05-15T08:27:22",
"upload_time_iso_8601": "2024-05-15T08:27:22.077961Z",
"url": "https://files.pythonhosted.org/packages/be/cb/8343b6b91fdbce1a2297e7d7973515001b7ea389c319eadb339227d2de22/pysui-0.60.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-15 08:27:22",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "FrankC01",
"github_project": "pysui",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "dataclasses_json",
"specs": [
[
"<",
"0.7.0"
],
[
">=",
"0.6.3"
]
]
},
{
"name": "pyyaml",
"specs": [
[
">=",
"6.0.1"
],
[
"<",
"6.2"
]
]
},
{
"name": "httpx",
"specs": [
[
"<",
"0.28"
],
[
">=",
"0.27.*"
]
]
},
{
"name": "h2",
"specs": [
[
"<",
"5"
],
[
">=",
"4.1.*"
]
]
},
{
"name": "pysui-fastcrypto",
"specs": [
[
">=",
"0.5.0"
]
]
},
{
"name": "gql",
"specs": [
[
">=",
"3.5.0"
]
]
},
{
"name": "websockets",
"specs": [
[
"<",
"13.0.0"
],
[
">=",
"10.0.*"
]
]
},
{
"name": "typing_utils",
"specs": [
[
"<",
"0.2.0"
],
[
">=",
"0.1.*"
]
]
},
{
"name": "canoser",
"specs": [
[
"<",
"0.9.0"
],
[
">=",
"0.8.*"
]
]
},
{
"name": "base58",
"specs": [
[
">=",
"2.1.*"
],
[
"<",
"2.2.0"
]
]
},
{
"name": "Deprecated",
"specs": [
[
">=",
"1.2.*"
],
[
"<",
"1.3.0"
]
]
}
],
"lcname": "pysui"
}