GithubHelp home page GithubHelp logo

elys-network / elys Goto Github PK

View Code? Open in Web Editor NEW
44.0 7.0 34.0 5.17 MB

Elys Network is the first All-In-One DEFI platform to join the Atom Economic Zone, backed by Informal Systems and the Cosmos Hub. Built on Cosmos and CometBFT, leveraging the latest blockchain technologies to provide a premier user experience. Visit our official site at https://elys.network

Home Page: https://elys.network

License: Apache License 2.0

Go 96.85% Makefile 0.31% Shell 2.60% Dockerfile 0.04% TypeScript 0.11% JavaScript 0.09%
blockchain cosmos-sdk dex web3 cosmos defi lending liquidity-pool liquidity-providers margin-trading

elys's Introduction

Elys

Elys is a blockchain built using Cosmos SDK and CometBFT. It is designed to be a fast, scalable, and secure blockchain that can be used to build decentralized applications.

Parameter Value
Chain ID elystestnet-1
Denomination uelys
Decimals 6 (1 elys= 1000000uelys)
Version See latest version here
RPC Endpoint https://rpc.testnet.elys.network:443

Installation

With Makefile (Recommended)

This section provides a step-by-step guide on how to build the Elys Chain binary from the source code using the provided makefile. The makefile automates the build process and generates a binary executable that can be run on your local machine.

Click to expand/collapse
  1. Clone the Elys chain repository:
git clone https://github.com/elys-network/elys.git
  1. Navigate to the cloned repository:
cd elys
  1. Optionally, checkout the specific branch or tag you want to build:
git checkout <version>
  1. Ensure that you have the necessary dependencies installed. For instance, on Ubuntu you need to install the make tool:
sudo apt-get install --yes make
  1. Optional: Use RocksDB instead of pebbledb

Ensure that you have RocksDB installed on your machine. On Ubuntu, you can install RocksDB using the following suite of commands:

# set rocks db version
ROCKSDB_VERSION=8.9.1

# install rocks db dependencies
sudo apt install -y libgflags-dev libsnappy-dev zlib1g-dev libbz2-dev liblz4-dev libzstd-dev

# download and extract on /tmp
cd /tmp
wget https://github.com/facebook/rocksdb/archive/refs/tags/v${ROCKSDB_VERSION}.tar.gz
tar -xvf v${ROCKSDB_VERSION}.tar.gz && cd rocksdb-${ROCKSDB_VERSION} || return

# build rocks db
export CXXFLAGS='-Wno-error=deprecated-copy -Wno-error=pessimizing-move -Wno-error=class-memaccess'
make shared_lib

# install rocks db
sudo make install-shared INSTALL_PATH=/usr

# cleanup to save space
rm -rf /tmp/rocksdb-${ROCKSDB_VERSION} /tmp/v${ROCKSDB_VERSION}.tar.gz

In order to build the binary with RocksDB, you need to run the following command:

ROCKSDB=1 make build

Note: RocksDB is only required for Linux machines. For macOS, you can continue without installing RocksDB.

When running ROCKSDB=1 make build, if you are getting this error:

elysd: error while loading shared libraries: librocksdb.so.8.9: cannot open shared object file: No such file or directory

You might need to set the LD_LIBRARY_PATH environment variable to the local library path. You can do this by running the following command:

export LD_LIBRARY_PATH=/usr/local/lib
  1. Run the make build command to build the binary:
make build
  1. The binary will be generated in the ./build directory. You can run the binary using the following command:
./build/elysd

You can also use the make install command to install the binary in the bin directory of your GOPATH.

With Ignite (Experimental)

To install the latest version of Elys binary, execute the following command on your machine:

curl https://get.ignite.com/elys-network/elys@latest! | sudo bash

Development

You can use ignite-cli to get you started with your development environment. To install ignite-cli, execute the following command on your machine:

curl https://get.ignite.com/ignite/ignite-cli@latest! | sudo bash

Initialize

To initialize and serve your development environment, execute the following command:

ignite chain serve -r

serve command installs dependencies, builds, initializes, and starts Elys in development. The -r flag rebuilds the binary before starting the chain.

Validator Guide

The validator guide is accessible here.

Network Launch

The network guide is accessible here.

Architecture

The architecture guide is accessible here.

Release

To release a new version of Elys, create and push a new tag with v prefix. A new draft release with the configured targets will be created.

git tag v0.1
git push origin v0.1

After a draft release is created, make your final changes from the release page and publish it.

Learn more

elys's People

Contributors

amityadav0 avatar austinobombino avatar cosmic-vagabond avatar dependabot[bot] avatar effofxprime avatar fenriz07 avatar jasonsopko avatar jelysn avatar kenta-elys avatar ollieottersync avatar omahs avatar politewall avatar tudorpintea999 avatar vamsi4845 avatar wgil avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

elys's Issues

chain-registry update

Can you guys add the update to the https://github.com/cosmos/chain-registry repo?

I've already prepare the preliminary version of the chain.json you can use https://gist.githubusercontent.com/andy108369/727bb9d8612fc66e9db35eebf183afe3/raw/64b62a051e30ea0febf344d6d2a1125dad8dd03b/elys-chain.json

I guess the values for the fee_tokens need to be amended there.

P.S.
I am adding Elys to the cosmos-omnibus project so one can easily deploy Elys on Akash Network => akash-network/cosmos-omnibus#452

Error validator node

Our validator node stoped.

We are using docker in order to launch and maintain our validator node, we upgraded yesterday and our node stoped this morning with some logs; We upgraded go but don't seems to be the issu

elys-testnets_chain | 11:07AM INF Vesting tokens for vestingInfo module=x/commitment elys-testnets_chain | thread '<unnamed>' panicked at 'There is an old error message in the given pointer that has not been cleaned up. Error message pointers should not be reused for multiple calls.', src/error/rust.rs:132:13 elys-testnets_chain | note: run withRUST_BACKTRACE=1environment variable to display a backtrace elys-testnets_chain | fatal runtime error: failed to initiate panic, error 5 elys-testnets_chain | SIGABRT: abort elys-testnets_chain | PC=0x7fef9a06e9fc m=8 sigcode=18446744073709551610 elys-testnets_chain | signal arrived during cgo execution elys-testnets_chain | elys-testnets_chain | goroutine 10 [syscall]: elys-testnets_chain | runtime.cgocall(0x23e16c0, 0xc006aef1e0) elys-testnets_chain | /usr/local/go/src/runtime/cgocall.go:157 +0x4b fp=0xc006aef1b8 sp=0xc006aef180 pc=0x40b0eb elys-testnets_chain | github.com/CosmWasm/wasmvm/internal/api._C2func_execute(0x7fef1000e940, {0x0, 0xc006a680a0, 0x20}, {0x0, 0xc0008c16c0, 0xc7}, {0x0, 0xc00014af20, 0xa8}, ...) elys-testnets_chain | _cgo_gotypes.go:304 +0x71 fp=0xc006aef1e0 sp=0xc006aef1b8 pc=0x14aab11 elys-testnets_chain | github.com/CosmWasm/wasmvm/internal/api.Execute.func1({0x10?}, {0x1?, 0xc006a680a0?, 0xffff?}, {0x99?, 0xc0008c16c0?, 0x25c7860?}, {0x0, 0xc00014af20, 0xa8}, ...) elys-testnets_chain | /root/go/pkg/mod/github.com/!cosm!wasm/[email protected]/internal/api/lib.go:235 +0x238 fp=0xc006aef370 sp=0xc006aef1e0 pc=0x14b3298 elys-testnets_chain | github.com/CosmWasm/wasmvm/internal/api.Execute({0x392e338?}, {0xc006a680a0?, 0x0?, 0xc006aef748?}, {0xc0008c16c0?, 0xc006a665c0?, 0x20?}, {0xc00014af20, 0xa8, 0xb0}, ...) elys-testnets_chain | /root/go/pkg/mod/github.com/!cosm!wasm/[email protected]/internal/api/lib.go:235 +0x6a7 fp=0xc006aef670 sp=0xc006aef370 pc=0x14b2d07 elys-testnets_chain | github.com/CosmWasm/wasmvm.(*VM).Execute(0xc002c83ed0, {0xc006a680a0, 0x20, 0x20}, {{0x470f38, 0x17a30c5532c917f1, {0xc0060f4490, 0xd}}, 0xc006a0d598, {{0xc006921c40, ...}}}, ...) elys-testnets_chain | /root/go/pkg/mod/github.com/!cosm!wasm/[email protected]/lib.go:187 +0x276 fp=0xc006aef790 sp=0xc006aef670 pc=0x14bc616 elys-testnets_chain | github.com/CosmWasm/wasmd/x/wasm/keeper.Keeper.execute({{0x3943950, 0xc0018017b0}, {0x398a598, 0xc001b59a60}, {0x39488f0, 0xc001809360}, {0x393ab20, 0xc002c83e90}, {0x39386c0, 0xc0006550c0}, ...}, ...) elys-testnets_chain | /root/go/pkg/mod/github.com/!cosm!wasm/[email protected]/x/wasm/keeper/keeper.go:386 +0xba2 fp=0xc006af1248 sp=0xc006aef790 pc=0x1e2b082 elys-testnets_chain | github.com/CosmWasm/wasmd/x/wasm/keeper.msgServer.ExecuteContract({0x41203a?}, {0x3968808, 0xc006a41d40}, 0xc0069f2780) elys-testnets_chain | /root/go/pkg/mod/github.com/!cosm!wasm/[email protected]/x/wasm/keeper/msg_server.go:127 +0x1eb fp=0xc006af1a60 sp=0xc006af1248 pc=0x1e3d3cb elys-testnets_chain | github.com/CosmWasm/wasmd/x/wasm/keeper.(*msgServer).ExecuteContract(0x411b05?, {0x3968808?, 0xc006a41d40?}, 0x29d35c0?) elys-testnets_chain | <autogenerated>:1 +0x2e fp=0xc006af1a90 sp=0xc006af1a60 pc=0x1e5af4e elys-testnets_chain | github.com/CosmWasm/wasmd/x/wasm/types._Msg_ExecuteContract_Handler.func1({0x3968808, 0xc006a41d40}, {0x295f6c0?, 0xc0069f2780}) elys-testnets_chain | /root/go/pkg/mod/github.com/!cosm!wasm/[email protected]/x/wasm/types/tx.pb.go:2012 +0x72 fp=0xc006af1ad0 sp=0xc006af1a90 pc=0x1522312 elys-testnets_chain | github.com/cosmos/cosmos-sdk/baseapp.(*MsgServiceRouter).RegisterService.func2.1({0x39683a8, 0xc006a26580}, {0xc006af1b68?, 0x411b05?}, 0x2a0?, 0xc006913aa0) elys-testnets_chain | /root/go/pkg/mod/github.com/cosmos/[email protected]/baseapp/msg_service_router.go:118 +0x93 fp=0xc006af1b20 sp=0xc006af1ad0 pc=0x116c373 elys-testnets_chain | github.com/CosmWasm/wasmd/x/wasm/types._Msg_ExecuteContract_Handler({0x28d9160?, 0xc0001869f0}, {0x39683a8, 0xc006a26580}, 0x33e54e0, 0xc006957fa0) elys-testnets_chain | /root/go/pkg/mod/github.com/!cosm!wasm/[email protected]/x/wasm/types/tx.pb.go:2014 +0x135 fp=0xc006af1b78 sp=0xc006af1b20 pc=0x15221f5

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.