/neutron

Smart Contract platform secured by Cosmos Hub

Primary LanguageGoApache License 2.0Apache-2.0

Neutron

Neutron

NOTE: current version is a WIP.

Requirements

  • Go 1.18
  • Ignite Cli
  • Hermes IBC Relayer

How to install Ignite CLI

curl https://get.ignite.com/cli! | bash

How to install Hermes IBC Relayer

For current CCV modules support there is not any suitable version of hermes, so you need to build it by yourself.

git clone https://github.com/informalsystems/hermes.git
cd hermes
git checkout 7defaf067dbe6f60588518ea1619f228d38ac48d
cargo build --release --bin hermes

Build and Install Neutron Zone

make install

Run local testnet node instances connected via IBC

Bootstrap two chains and create an IBC connection

In order to bootstrap two chains it is required to clone gaiad v7.0.3 next to neutron repository and install it.

git clone https://github.com/cosmos/gaia.git
cd gaia
git checkout v7.0.3
make install

after that you can turn back into neutron directory and run:

make init

Start relayer

make start-rly

Generate proto

ignite generate proto-go

Running with docker

Build the image:

make build-docker-image

After the image is built, you can start/stop with:

make start-docker-container
make stop-docker-container

Running with docker + relayer

ssh-add ./.ssh/id_rsa
make start-cosmopark
make stop-cosmopark

Make sure you delete node image if you use the whole thing in dev purposes

@docker rmi neutron-node

Documentation

You can check the documentation here: https://neutron-org.github.io/neutron-docs/

Note: we are going to open & deploy the docs soon.

Examples

You can check out the example contracts here: https://github.com/neutron-org/neutron-contracts

Tests

Integration tests are implemented here: https://github.com/neutron-org/neutron-integration-tests