Nibiru Chain is a breakthrough smart contract platform providing superior throughput, reduced latency, and improved security, all driven by Web Assembly (Wasm) smart contracts.
- Docs | Nibiru Chain: Conceptual and technical documentation can be found here.
- Complete Golang reference docs: (
pkg.go.dev
) For the blockchain implementation . - "X Module"-specific documentation
If you have questions or concerns, feel free to connect with a developer or community member in the Nibiru Discord. We also have active communities on Twitter and Telegram.
- CosmWasm Smart Contracts: Rust-based, Wasm smart contracts built enhanced security, performance, and interoperability. See our CosmWasm sandbox monorepo (cw-nibiru) for the protocol's core smart contracts.
- Nibi-Perps: A perpetual futures exchange where users can take leveraged exposure and trade on a plethora of assets — completely on-chain, completely non-custodially, and with minimal gas fees.
- Nibi-Oracle: Nibiru accurately prices assets using a native, system of decentralized oracles, and communicates with other Cosmos layer-1 chains using the Inter-Blockchain Communication (IBC) (opens new window)protocol.
- Nibi-Swap: An automated market maker protocol for multichain assets. This application gives users access to swaps, pools, and bonded liquidity gauges.
Module | Description |
---|---|
[wasm][code-x-wasm] | Implements the execution environment for WebAssembly (WASM) smart contracts. |
devgas | The devgas module of Nibiru Chain shares contract execution fees with smart contract developers. This aims to increase the adoption of Nibiru by offering CosmWasm smart contract developers a direct source of income based on usage. |
epochs | The epochs module allows other modules to set hooks to be called to execute code automatically on a period basis. For example, "once a week, starting at UTC-time = x". epochs creates a generalized epoch interface. |
inflation | Implements the tokenomics for Nibiru. |
common | Holds helper and utility functions to be utilized by other x/ modules. |
oracle | Handles the posting of an up-to-date and accurate feed of exchange rates from the validators. |
perp | Powers the Nibi-Perps exchange. This module enables traders to open long and short leveraged positions and houses all of the PnL calculation and liquidation logic. |
spot | Responsible for creating, joining, and exiting liquidity pools. It also allows users to swap between two assets in an existing pool. It's a fully functional AMM. |
Nibiru is built with the Cosmos-SDK on Tendermint Core consensus and communicates with other blockchain chains using the Inter-Blockchain Communication (IBC) protocol.
Installation instructions for the nibid
binary can be found in INSTALL.md.
Recommended minimum specs:
- 2CPU, 4GB RAM, 100GB SSD
- Unix system: MacOS or Ubuntu 18+
To simply access the nibid
CLI, run:
make install
Usage instructions for the nibid
CLI are available at docs.nibiru.fi/dev/cli and the Nibiru Module Reference.
On a fresh clone of the repo, simply run:
make localnet
and open another terminal.
make proto-gen
We use the golangci-lint linter. Install it and run
golangci-lint run
at the root directory. You can also install the VSCode or Goland IDE plugins.
Run the following commands to set up a local network of Docker containers running the chain.
make build-docker-nibidnode
make localnet-start
Licensed under the MIT License.