Skip to main content

Easy to use CLI for fift / func projects

Project description

Superset

toncli

License PyPI version Codacy Badge TON

The Open Network cross-platform smart contract command line interface.

Easy to deploy and interact with TON smart contracts.

🔧 Installation

Toncli support Windows / macOS (m1 / intel) / Linux / Docker, installation guide can be found: INSTALLATION.md

📚 Usage and docs

New to toncli?

Try: Quick start guide

All other documentation lists in docs/

Lessons

🇬🇧 Ton FunC lessons Eng

🇷🇺 Ton FunC lessons Rus

Contributor Guide

Interested in contributing? Feel free to create issues and pull requests.

We are trying to process all tasks through issues. You can take own one 🥳

Features and status

Feature Status
fift / func / lite-server usage
Easy bootstrap project samples wallet
Deploy-wallet for auto send TON to contracts and tests
Compile func to build/ from func/ with files.yaml
Auto send TON to init contract address
Deploy to mainnet / testnet / ownnet
Project interact after deploy: easily send messages, run getmethods, run fift parsers on getmethods output
Load from hard project structure (example: src/projects/wallet)
Run remote contracts locally (get cells from chain and run locally to get error / debug / etc.)
Get contract address by toncli addrs
Docs for contract creation for beginners
Project tests with runvmcode
Windows & Linux support
Unit tests engine
Add more project samples with advanced usage

Commands

All commands could be fined in docs/advanced/commands.md

Configuration

Config folder will create on first deploy, all fift / func libs will copy to it, also deploy wallet contract will be created

Deploy process (how it's actually work)

  1. Check network (testnet, mainnet) configuration locally (in config user folder)
    1. If no config found - download from URL in config.ini
  2. Check deploy wallet locally (in config user folder)
    1. If it's first time - simple wallet will be created in config folder
    2. Message with wallet address and tips will be displayed (user need to send some TON coin on it)
    3. If there is no TON in deploy contract - script will exit and notify user to update deployer balance
  3. Will run tests on fift/data.fif / fift/message.fif (if exist) / fift/lib.fif (if exist) before creating deploy message
    1. This will check all files are correct
    2. Also, you can run custom logic - for example create keys in build/
  4. Will calculate address of contract and display it to user
  5. Will send money from deploy wallet
  6. Will deploy your contract
    1. External message will be created
    2. Boc will generated
    3. Will invoke sendfile in lite-client (TODO: use native python lib, not lite-client)

Development

git clone git@github.com:disintar/toncli.git
cd toncli && pip install -e .

If you wish to update toncli locally you can use pip install -e path/to/toncli/rootfolder/ command anytime after you make changes to the toncli source code.

Version migration

0.24

Please, use toncli update_libs

0.22

The easy migration method - remove fift-libs, func-libs from ~/.config/toncli or delete whole directory ~/.config/toncli

Help and questions

Feel free to ask questions and help in official telegram chats: Russian / English

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

toncli-0.0.43.tar.gz (40.6 kB view details)

Uploaded Source

Built Distribution

toncli-0.0.43-py3-none-any.whl (283.5 kB view details)

Uploaded Python 3

File details

Details for the file toncli-0.0.43.tar.gz.

File metadata

  • Download URL: toncli-0.0.43.tar.gz
  • Upload date:
  • Size: 40.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.7

File hashes

Hashes for toncli-0.0.43.tar.gz
Algorithm Hash digest
SHA256 060efb1ef3ded77c13324f6ff51b24e3869a5c8e30068c1a4a0163857c9a08c3
MD5 d70e3b7e47d973e31d23085d9a06c9c0
BLAKE2b-256 dfd2bb013958a113c84385d9b75da6328753be5715019d711e53dd8e1ed9257f

See more details on using hashes here.

File details

Details for the file toncli-0.0.43-py3-none-any.whl.

File metadata

  • Download URL: toncli-0.0.43-py3-none-any.whl
  • Upload date:
  • Size: 283.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.7

File hashes

Hashes for toncli-0.0.43-py3-none-any.whl
Algorithm Hash digest
SHA256 46d33c8553a95c3705ff77ef505cda38ee0b30a71c5453c2c7704f004f62f36b
MD5 4562321f5ceca4b3f8ac3ff20ba9d3a9
BLAKE2b-256 d42491d41a7f2addbad4037ba73d241e9f2653d491eb545f8b430025db90bce8

See more details on using hashes here.

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