GithubHelp home page GithubHelp logo

besiwims / cardano-cli-gui Goto Github PK

View Code? Open in Web Editor NEW

This project forked from input-output-hk/cardano-cli-gui

1.0 0.0 0.0 98.69 MB

Simple GUI for the cardano-cli tool. Plutus Pioneer

License: Apache License 2.0

Python 99.92% Nix 0.08%

cardano-cli-gui's Introduction

cardano-cli-gui

Simple GUI that cover some basic functionality of the Cardano CLI command line tool.

WARNING:
The GUI was created for educational purposes and is not regularly updated with changes in the Cardano CLI. If you want to use the GUI for submitting transactions on the main net you are doing so at your own risk.

To run the GUI you can use the executable files in the executables/ folder. Download the executable for your OS. If you want to use the GUI also in debug mode you should run the executable from a terminal window. Then in debug mode the GUI prints the cardano-cli commands to the terminal window instead of acctually executing them.

You can also run the GUI from source. In that case you need to have python 3 and PyQt 5 installed for the GUI to work. Simply download this repository, open a terminal in the downloaded folder and run:

python cardano-cli-gui.py

IMPORTANT: To use the query and send command in the GUI a cardano node has to be running and synced to the test or main network.

To run a cardano node download it from here and install it. The installer files are located under the Assets section that needs to be expanded. Add all executable files including the cardano-node and cardano-cli to you system path, e.g. copy them to /usr/local/bin/.

Then download the configurations files for the Preview testnet from here or for the Preprod testnet from here.

From the folder that contains your configuration files run:

cardano-node run \
 --topology topology.json \
 --database-path db \
 --socket-path node.socket \
 --host-addr 0.0.0.0 \
 --port 3001 \
 --config config.json

The node.socket file will be created in the folder from where you ran the above command. Stop the node and add to the end of your .bashrc file that is located in your HOME folder the follwoing line:

export CARDANO_NODE_SOCKET_PATH="$HOME/<path>/<to>/node.socket"

Source the .bashrc file:

source ~/.bash.rc

Start the cardano node again. You can check how much the node is synced if you go to the Query tab of the GUI. There select mainnet or testnet and press the Query info button. If you then scroll down in the text box you will see the field syncProgress.

You can also check the sync progress for the testnet with the following command:

cardano-cli query tip --testnet-magic <testnet_number> 

For the testnet number use 1 for preprod and 2 for preview.

GUI design

The GUI functionality is seperated in 7 tabs and covers following things:

  1. Start tab, that notifies the user that he has to set a valid folder path to unlock other tabs. The folder path will be used to load and save key and address files. It also displays if the Debug mode is set ON or OFF.

alt text

  1. Wallet tab, that handles loading or generating verification and signing keys, payment addresses and payment public key hashes.

alt text

  1. Transactions tab, that handles checking funds for a payment address and sending funds to a receiving address.

alt text

  1. Smart contracts - send tab, that handles building a script payment address for a script file. You can also send funds to the generated script address and attach a datum to the transaction.

alt text

  1. Smart contracts - receive tab, that handles creating a spending transactions that spends a script address UTxO You can attach a datum and a redeemer to the transaction and set a validity interval.

alt text

  1. Query tab, that lets you query an address for funds, query net information and generate the protocol parameters file for the chosen net.

alt text

  1. Developer tab, that lets more experienced users set a different testnet magic number or update the era parameter.

alt text

cardano-cli-gui's People

Contributors

lukakurnjek avatar

Stargazers

Bernard Sibanda avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.