Skip to content

PoCInnovation/kermit

Repository files navigation

If you see this section, you've just created a repository using PoC Innovation's Open-Source project template. Check the getting started guide.

Kermit CLI

Kermit is a powerful, user-friendly command-line interface (CLI) designed for Alephium to interact with a blockchain node and manage wallets. Whether you're a developer, node operator, or enthusiast, Kermit provides essential utilities to manage blockchain nodes, perform wallet operations, monitor mempool transactions, and retrieve various node metrics.

⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⡴⠖⠛⠛⠛⠛⠳⢯⣁⣀⣤⡴⠦⣥⣀⣬⣷⠶⠭⣥⣄⡀⣠⡼⢤⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡴⠋⠀⣠⣶⣶⣶⠶⠂⠀⠹⣯⠀⢠⣤⣤⠉⠁⠀⣀⣀⠀⠈⠙⢻⣷⡄⠀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣸⠁⠀⣠⡿⠟⠋⠀⠀⢀⣠⡶⠛⠀⠀⠀⠹⣦⡀⠀⠈⢻⣿⣷⣤⠀⠹⣷⡀⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣸⣷⠀⠀⣉⠀⠀⣀⣠⠴⠛⠁⠀⡀⠤⠑⠀⡀⠈⠳⣄⠀⠀⠙⢻⣿⠀⠀⣿⣷⡄⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⠀⢀⡤⠞⠋⠁⠘⠳⠶⠶⠶⠛⠋⡁⠠⠐⠤⢁⠂⠀⠀⠀⠀⠀⠀⠉⠳⣤⣀⠈⠋⠀⣰⣿⣸⡇⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⠀⣰⠏⣠⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠁⢀⠒⠠⠘⡀⠂⠀⠀⠀⠀⠀⠀⠀⠀⠉⠓⠶⠖⠛⢿⣯⣦⣀⣤⣀⣄⣀⡀⠀ ⠀⠀⠀⠀⠀⠀⢸⠇⣸⣿⡄⠀⠠⠄⠁⠀⠀⠀⠀⠀⡈⠄⠒⡠⠐⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⢳⣌⣷⠀⢿⠛⠻⡅ ⠀⠀⠀⠀⠀⠀⢺⡄⡹⢾⣷⡀⠀⠀⠀⠀⠀⠀⠀⠌⠀⢂⠁⢂⠁⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣴⢻⣿⠀⢸⡇⠀⡇ ⠀⠀⠀⠀⠀⠀⢸⡇⢼⡹⣟⣿⡄⠰⣬⣡⠂⢒⠠⢌⠂⡌⠢⠁⢀⠐⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣾⡧⣾⣿⠀⠀⠇⠀⣇ ⠀⠀⠀⠀⠀⠀⠀⢹⡜⣵⢫⢟⣷⡀⠀⠙⠻⣦⣶⣬⣄⣂⡐⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣀⡀⣠⠴⠛⢫⢵⣿⠧⠀⠀⣸⠀⡿ ⠀⠀⠀⠀⠀⠀⢀⣠⣿⡜⠦⢋⠞⢷⠀⠀⡠⢄⡉⠝⡋⠟⠿⠿⠷⠷⠶⠶⠾⠞⠛⠛⠛⠋⠉⠀⠀⠀⠠⠌⡑⢂⣿⢯⠃⠀⠀⠃⢀⣇ ⠀⢀⣀⣤⠶⠋⠁⣀⣤⣷⡄⠀⢎⡘⢦⠰⣱⢢⢉⠮⡑⢮⠰⣀⠆⢀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⣈⣤⡿⠃⠀⢀⠆⠀⠀⣼⡍ ⠚⠋⢁⣠⠤⢒⢾⡻⣽⢯⣿⡄⠺⣄⠣⡙⢆⡣⢞⡰⡙⢦⢣⢍⡚⢆⢳⠘⡄⠣⠉⠆⢀⡀⢀⠀⢀⢀⣷⠟⠉⠀⢀⡴⠋⠀⠀⢰⡏⠀ ⠠⠒⠉⢠⠒⣭⠶⡽⣧⢿⣿⣇⢶⣌⢡⠓⡬⢜⣣⠲⡙⢦⡉⠶⡘⢆⡣⣉⠘⣅⠚⡌⢂⠠⣁⣬⣾⠟⠃⠀⢀⠒⠈⠀⠀⣠⡴⠋⠀⠀ ⠀⠀⢈⠂⣋⠶⣹⢹⡞⣯⢿⣿⣌⠿⣧⡑⠘⡆⢧⡙⡝⢦⡙⡤⣙⠢⢥⢨⡑⢢⡙⢀⣣⣶⣿⡟⠁⡀⢄⣰⣦⣋⣤⡶⠛⠁⠀⠀⠀⠀ ⠤⠶⠲⢞⣲⠶⠃⡓⢞⡵⣻⣿⣧⢫⠽⣿⣌⠘⢤⠹⡜⣡⠞⡰⡡⢞⢢⡱⡌⠧⣘⣾⣿⢫⣿⠀⠂⠄⠸⢹⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⡴⣩⠞⠁⠀⠀⠌⣈⠲⢍⣿⣿⣌⠫⣝⡻⣧⢀⠫⡜⢤⠋⣖⡙⢦⢃⢖⠩⡒⣿⠋⡞⢿⡿⠀⠄⠀⠀⠀⢻⡆⠀⠀⠀⠀⠀⠀⠀⠀ ⠴⠋⠀⠀⠀⠀⠀⠀⠀⠀⠈⡘⢿⣧⡓⣌⠳⣙⢧⢣⠘⡥⢚⠤⡹⢌⡩⢌⣢⣿⠋⠀⠰⢸⣿⠀⠈⠄⠀⠀⠀⢻⣇⠀⠀⠀⠀⠀⠀⠀ ⠀⠀⠀⠀⠀⠀⢀⣀⣠⣤⡾⠀⠈⠹⢷⣮⣛⡶⣎⣆⠏⣜⡩⢒⡱⢎⣔⣻⡿⠁⠀⠀⠹⣼⣿⡆⢁⠠⠀⠄⠀⠈⣏⣻⠀⠀⠀⠀⠀⠀ ⢠⠴⠖⡲⠛⡭⣁⠐⣨⡿⠈⠀⠀⠀⠀⠉⠛⠛⠻⠻⠿⢶⣧⣷⣶⡷⡾⠋⠀⠀⠀⠀⠀⠉⢻⣷⡈⢠⠀⠀⠀⠀⢸⡟⠀⠀⠀⠀⠀⠀ ⣀⠂⣏⠴⣉⠶⣈⢰⡿⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠀⠀⡀⢀⠀⠀⠰⣤⠀⠀⠀⠀⠈⠹⣧⡀⢄⠂⠀⠀⠀⣷⡆⠀⠀⠀⠀⠀ ⠀⢀⢻⣞⡯⢷⣠⡿⠁⠀⠀⠀⠀⠀⣀⣼⣇⠀⠀⠀⠀⠀⠀⢘⡇⠀⠀⠀⠀⣿⣿⣦⣄⠀⠀⠀⢿⡔⡈⠔⡀⠀⠀⠸⣇⠀⠀⠀⠀⠀ ⠀⠌⡎⢷⣹⢧⡿⠁⠀⠀⠀⠀⣠⡾⠋⠡⣿⠀⠀⠀⠀⠀⠀⣼⡆⠀⠀⠀⢠⣿⣿⡿⢿⠻⡶⣦⣼⣷⣁⠂⡠⠀⠀⠀⠛⠆⠤⢀⡀⠀ ⠀⠘⡬⢻⣽⡿⠁⠀⠀⣀⣴⠟⠃⠄⡀⢆⣿⠀⠀⠀⠀⠀⣼⣿⣿⡀⠀⢀⣼⣿⣿⣟⣎⠳⡱⢈⠉⠹⣇⠂⠄⠑⠀⠀⠀⠀⠀⠀⠀⠀ ⠀⢘⣰⣻⣿⠁⠀⣠⡾⢋⡅⣨⠐⠠⠐⢬⣿⠀⠀⠀⠀⣸⣟⡯⢿⣇⠀⣸⣿⣿⣚⣿⣎⡷⣑⠣⡄⠀⢫⠌⢂⠠⠀⠀⠀⠀⠀⠀⠀⠀

Canva Presentation

Canva link

How does it work?

Kermit is a command-line tool that allows users to interact with a blockchain node and manage wallets through a set of subcommands. The CLI follows a structured format, where each command corresponds to a specific operation related to either blockchain node management or wallet operations.

Basic Structure: The Kermit CLI is built using the Clap library, which organizes commands into a hierarchy of options and subcommands. The basic syntax for using Kermit is:

kermit [COMMAND] [SUBCOMMAND] [OPTIONS]

COMMAND: Represents the main category of operations (e.g., wallet, infos).

SUBCOMMAND: A specific action or operation under the selected command (e.g., create, status, list for wallet commands).

OPTIONS: Additional arguments required to complete the command (e.g., URL, wallet name, password).

All command is based on the Alephium API

Getting Started

Installation

To set up the CLI, follow this 2 steps:

  1. Clone the Kermit CLI repository:

    git clone [email protected]:PoCInnovation/kermit.git
  2. Install the program:

    cargo install --path .

!! If you want to run wallet command !!

Setup the Alephium Stack Development Environment

To set up the development environment, follow these steps:

  1. Clone the Alephium Stack repository:

    git clone [email protected]:alephium/alephium-stack.git
  2. Navigate to the devnet directory:

    cd alephium-stack/devnet
  3. Start the development environment with Docker:

    docker-compose up -d

Usage

You just need to run the command with the parameters of your choice

```bash
kermit [COMMAND] [SUBCOMMAND] [OPTIONS]
```

Examples

Here are some examples of how to use the Kermit CLI:

Before using kermit, I recommand you to set the URL of Alephium API with the command export URL=<URL>

  1. Create a new wallet:

    kermit wallet create <WALLET_NAME> <PASSWORD>
  2. Transfer funds between wallets:

    kermit tx create <SENDER_PUBLIC_KEY> <RECIPIENT_ADDRESS> <AMOUNT> --private-key <SENDER_PRIVATE_KEY>
  3. Check balance of a wallet:

    kermit address balance <ADDRESS>
  4. Compile a contract:

    kermit contracts compile tests/sub_contract.ral --contract-type project

You can do again more with kermit. I let you check the kermit --help, to take a look on all possibilities

Get involved

You're invited to join this project ! Check out the contributing guide.

If you're interested in how the project is organized at a higher level, please contact the current project manager.

Our PoC team ❤️

Developers


[Alexandre Timal]

[Nathan Flattin]

[Thomas Pommier]

Organization

LinkedIn logo Instagram logo Twitter logo Discord logo

Website logo

🚀 Don't hesitate to follow us on our different networks, and put a star 🌟 on PoC's repositories

Made with ❤️ by PoC

About

This is a CLI for the blockchain alephium

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •  

Languages