{"id":13687148,"url":"https://github.com/disintar/toncli","last_synced_at":"2025-04-04T21:10:14.955Z","repository":{"id":38079197,"uuid":"453659131","full_name":"disintar/toncli","owner":"disintar","description":"TON Command Line Interface - easy smart contract manipulation ","archived":false,"fork":false,"pushed_at":"2024-06-23T15:19:07.000Z","size":796,"stargazers_count":182,"open_issues_count":33,"forks_count":43,"subscribers_count":9,"default_branch":"master","last_synced_at":"2025-03-29T06:40:21.012Z","etag":null,"topics":["blockchain","cryptocurrency","disintar","dton","fift","func","ton"],"latest_commit_sha":null,"homepage":"https://disintar.io/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/disintar.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-01-30T11:18:36.000Z","updated_at":"2025-03-17T16:39:44.000Z","dependencies_parsed_at":"2024-06-20T01:14:55.869Z","dependency_job_id":"87a9241d-1909-4111-8393-ab5860767a4d","html_url":"https://github.com/disintar/toncli","commit_stats":{"total_commits":362,"total_committers":23,"mean_commits":15.73913043478261,"dds":0.574585635359116,"last_synced_commit":"b7cfee7dc24fb98a76d7318eae3feb7aa7aeadd3"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/disintar%2Ftoncli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/disintar%2Ftoncli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/disintar%2Ftoncli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/disintar%2Ftoncli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/disintar","download_url":"https://codeload.github.com/disintar/toncli/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247249532,"owners_count":20908212,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["blockchain","cryptocurrency","disintar","dton","fift","func","ton"],"created_at":"2024-08-02T15:00:49.600Z","updated_at":"2025-04-04T21:10:14.923Z","avatar_url":"https://github.com/disintar.png","language":"Python","readme":"\u003cp align=\"center\"\u003e\n   \u003ca href=\"https://disintar.io/\"\u003e\n       \u003cimg\n        src=\"https://raw.githubusercontent.com/disintar/toncli/master/docs/images/logo.png\"\n        alt=\"Superset\"\n        height=\"150\"\n      /\u003e\n   \u003c/a\u003e\n\u003c/p\u003e\n\n# toncli\n\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![PyPI version](https://badge.fury.io/py/toncli.svg)](https://github.com/disintar/toncli)\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/8f4acbbba3a743f992062c377c48c675)](https://www.codacy.com/gh/disintar/toncli/dashboard?utm_source=github.com\u0026amp;utm_medium=referral\u0026amp;utm_content=disintar/toncli\u0026amp;utm_campaign=Badge_Grade)\n[![TON](https://img.shields.io/badge/%F0%9F%92%8E-TON-green)](https://ton.org)\n\nThe Open Network cross-platform smart contract command line interface.\n\nEasy to deploy and interact with TON smart contracts.\n\n## 🔧 Installation\n\nToncli support Windows / macOS (m1 / intel) / Linux / Docker, installation guide can be\nfound: [INSTALLATION.md](/INSTALLATION.md)\n\n### 📚 Usage and docs\n\nNew to `toncli`?\n\nTry: [Quick start guide](/docs/quick_start_guide.md)\n\nAll other documentation lists in `docs/`\n\n### Lessons\n\n[🇬🇧 Ton FunC lessons Eng](https://github.com/romanovichim/TonFunClessons_Eng)\n\n[🇷🇺 Ton FunC lessons Rus](https://github.com/romanovichim/TonFunClessons_ru/)\n\n\n## Contributor Guide\n\nInterested in contributing? Feel free to create issues and pull requests.\n\nWe are trying to process all tasks through issues. You can take own one 🥳\n\n## Features and status\n\n| Feature                                                                                                   | Status |\n|-----------------------------------------------------------------------------------------------------------|-------|\n| `fift` / `func` / `lite-server` usage                                                                     | ✅     |\n| Easy bootstrap project samples `wallet`                                                                   | ✅     |\n| Deploy-wallet for auto send TON to contracts and tests                                                    | ✅     |\n| Compile func to `build/` from `func/` with `files.yaml`                                                   | ✅     |\n| Auto send TON to init contract address                                                                    | ✅     |\n| Deploy to mainnet / testnet / ownnet                                                                      | ✅     |\n| Project interact after deploy: easily send messages, run getmethods, run fift parsers on getmethods output | ✅     |\n| Load from hard project structure (example: `src/projects/wallet`)                                         | ✅     |\n| Run remote contracts locally (get cells from chain and run locally to get error / debug / etc.)           | ✅     |\n| Get contract address by `toncli addrs`                                                                    | ✅     |\n| Docs for contract creation for beginners                                                                  | ✅     |\n| Project tests with `runvmcode`                                                                            | ✅     |\n| Windows \u0026 Linux support                                                                                   | ✅     |\n| Unit tests engine                                                                                         | ✅     |\n| Add more project samples with advanced usage                                                              | ✅      |\n\n## Commands\n\n[List of all commands](/docs/advanced/commands.md)\n\n### Configuration\n\nConfig folder will create on first deploy, all fift / func libs will copy to it, also deploy wallet contract will be\ncreated\n\n### Deploy process (how it's actually work)\n\n1. Check network (testnet, mainnet) configuration locally (in config user folder)\n    1. If no config found - download from URL in config.ini\n2. Check deploy wallet locally (in config user folder)\n    1. If it's first time - simple wallet will be created in config folder\n    2. Message with wallet address and tips will be displayed (user need to send some TON coin on it)\n    3. If there is no TON in deploy contract - script will exit and notify user to update deployer balance\n3. Will run tests on `fift/data.fif` / `fift/message.fif` (if exist) / `fift/lib.fif` (if exist)  before creating deploy\n   message\n    1. This will check all files are correct\n    2. Also, you can run custom logic - for example create keys in build/\n4. Will calculate address of contract and display it to user\n5. Will send money from deploy wallet\n6. Will deploy your contract\n    1. [External message](https://gist.github.com/tvorogme/fdb174ac0740b6a52d1dbdf85f4ddc63#file-generate-fif-L113) will\n       be created\n    2. Boc will generated\n    3. Will invoke sendfile in lite-client (TODO: use native python lib, not lite-client)\n\n## Development\n\n```\ngit clone git@github.com:disintar/toncli.git\ncd toncli \u0026\u0026 pip install -e .\n```\n\nIf you wish to update toncli locally you can use ```pip install -e path/to/toncli/rootfolder/```\ncommand anytime after you make changes to the toncli source code.\n\n## Version migration\n\n#### 0.24\n\nPlease, use `toncli update_libs`\n\n#### 0.22\n\nThe easy migration method - remove `fift-libs`, `func-libs` from `~/.config/toncli` or delete whole\ndirectory `~/.config/toncli`\n\n## Help and questions\n\nFeel free to ask questions and help in official telegram chats: [Russian](https://t.me/tondev)\n/ [English](https://t.me/tondev_eng)\n\n## Donations\n\nTON: `EQCsCSLisPZ6xUtkgi_Tn5c-kipelVHRCxGdPu9x1gaVTfVC`\n\n## License \n\nCopyright (c) 2022 Disintar LLP Licensed under the Apache License\n","funding_links":[],"categories":["[Some tips from chats](tips.md)"],"sub_categories":["Deploy smart contract:"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdisintar%2Ftoncli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdisintar%2Ftoncli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdisintar%2Ftoncli/lists"}