Giter Club home page Giter Club logo

nibiru's Introduction

Nibiru Chain

Go Reference Nibiru Test workflow Nibiru Test workflow GitHub Discord Badge

Nibiru Chain is a breakthrough smart contract platform providing superior throughput, reduced latency, and improved security, all driven by Web Assembly (Wasm) smart contracts.

⚙️ — Documentation

💬 — Community

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.

Discord Tweet Telegram

🧱 — Components of Nibiru

  • 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.


⛓️ — Building: make commands

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+

Nibid CLI

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.

Running a Local Node

On a fresh clone of the repo, simply run:

make localnet

and open another terminal.

Generate the protobufs

make proto-gen

Linter

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.

Multiple Nodes

Run the following commands to set up a local network of Docker containers running the chain.

make build-docker-nibidnode

make localnet-start

License

Licensed under the MIT License.

nibiru's People

Contributors

nibiruheisenberg avatar unique-divine avatar k-yang avatar dependabot[bot] avatar matthiasmatt avatar agentsmithmatrix avatar testinginprod avatar vimdiesel-cosmos avatar jgimeno avatar mdarblade avatar helder-moreira avatar superfiredoge avatar kai0x avatar onikonychev avatar john-connor84 avatar capneal avatar tj327 avatar fdymylja avatar th3nyst1c avatar blocknovator avatar cgilbe27 avatar omahs avatar shuoer86 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.