{"id":13631056,"url":"https://github.com/blockchainsllc/piet","last_synced_at":"2025-04-14T04:32:55.635Z","repository":{"id":39434447,"uuid":"200809316","full_name":"blockchainsllc/piet","owner":"blockchainsllc","description":null,"archived":false,"fork":false,"pushed_at":"2023-01-12T01:47:36.000Z","size":5125,"stargazers_count":112,"open_issues_count":33,"forks_count":14,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-03-27T19:13:56.887Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blockchainsllc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-08-06T08:27:40.000Z","updated_at":"2025-03-05T00:22:47.000Z","dependencies_parsed_at":"2023-02-09T09:15:21.571Z","dependency_job_id":null,"html_url":"https://github.com/blockchainsllc/piet","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blockchainsllc%2Fpiet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blockchainsllc%2Fpiet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blockchainsllc%2Fpiet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blockchainsllc%2Fpiet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blockchainsllc","download_url":"https://codeload.github.com/blockchainsllc/piet/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248822243,"owners_count":21167029,"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":[],"created_at":"2024-08-01T22:02:08.720Z","updated_at":"2025-04-14T04:32:50.611Z","avatar_url":"https://github.com/blockchainsllc.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"# Blockchains Piet\nA tool helping to grasp solidity smart contract architectures.\n\n[Live Demo](https://piet.blockchains.com/?container=examples%2Fexport1562664060589.piet.json)\n\n**Warning:** Piet has not yet undergone in-depth testing and may contain serious bugs.\n\n## Abstract\nPiet is a web application providing support to understand smart contract architectures. \nThis is approached by generating a graphical representation of such architectures and a possibility to query deployed instances of smart contracts.\n\nThe graphical representation shows the inheritance structure of solidity contracts. In addition to the inheritance structure the defined enumerations and structs are shown.\n\nTo provide understanding of one single solidity contract Piet offers an inspector view showing all members of the contract including the inherited ones.\nThe presentation of the contract and the contract members is enriched by documentation labels derived from Ethereum NatSpec tags.\n\nPiet also provides an interactive mode enabling to read the state of a smart contract, sending transactions and browsing through events. This is achieved by connecting to deployed smart contracts through an injected web3 object.  \n\n\n## Feature List\n- Graphical representation of smart contract architectures\n  - Inheritance structure of contracts\n  - Shows structs and enums\n- Smart contract inspector\n  - Shows structure of a smart contract (e.g. functions, events, ...)\n  - Shows inherited members\n  - Convenient representation of solidity code documentation\n- Interactive Mode\n  - Read state from blockchain (e.g. state variables, view functions) \n  - Send transactions\n- Event browser\n- NatSpec to Markdown documentation generator\n- Node inspection via JSON RPC calls\n- Transaction history view\n- Code and ABI view\n\n## Usage\nType `npm i` followed by `npm start` to start a local instance of Piet at [http://localhost:3001](http://localhost:3001 ) \n\n## Known Issues\n- Some returned tuples may not be displayed correctly\n- Two or more contracts with the identical name cannot be loaded\n- The react component structure needs to be refactored\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblockchainsllc%2Fpiet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblockchainsllc%2Fpiet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblockchainsllc%2Fpiet/lists"}