Skip to content

Rust monorepo and Wasm smart contract sandbox for Nibiru Chain

Notifications You must be signed in to change notification settings

NibiruChain/nibiru-wasm

Repository files navigation

NibiruChain/nibiru-wasm

Wasm smart contract sandbox for Nibiru Chain.

⚑ NibiruChain/nibiru-wasm
β”œβ”€β”€ πŸ“‚ artifacts         # compiled .wasm smart contracts for nibiru-wasm
β”œβ”€β”€ πŸ“‚ contracts         # Smart contracts for Nibiru Chain
    └── πŸ“‚ nibi-stargate # Example contract using nibiru-std for CosmosMsg::Stargate
    └── πŸ“‚ incentives    # Generalized incentives over time for locked tokens
    └── πŸ“‚ lockup        # For locking and unlocking tokens like LP tokens
    └── πŸ“‚ pricefeed     # CosmWasm prototype of the (now deprecated) x/pricefeed module.
    └── πŸ“‚ core-cw3-flex-msig # CW3-flex-multisig with stargate enabled.
    └── πŸ“‚ core-shifter       # Calls peg shift and depth shift in x/perp.
    └── πŸ“‚ core-controller    # Calls other admin calls from Nibiru foundation.
    └── πŸ“‚ core-token-vesting # Token linear vesting contracts with optional cliffs.
    └── πŸ“‚ core-token-vesting-v2 # Improved version of core-token-vesting-v2.
β”œβ”€β”€ πŸ“‚ nibiru-std      # Nibiru Chain standard library for smart contracts
    └── πŸ“¦ proto       # Types and traits for QueryRequest::Stargate and CosmosMsg::Stargate
         └──           #   Includes constructors for Cosmos, IBC, and Nibiru. 
    └── πŸ“¦ bindings    # For sending CosmosMsg::Custom msgs on Nibiru (soon deprecated).
β”œβ”€β”€ πŸ“‚ packages        # Other Rust packages
    └── πŸ“¦ bash-rs     # Easily run bash from Rust. Used for writing testable and maintainable scripts.
    └── πŸ“¦ nibi-dev    # Dev tooling package for Nibiru. 
    └── πŸ“¦ nibiru-macro  # Implements procedural macros for the "nibiru-macro" package. 
β”œβ”€β”€ Cargo.toml
β”œβ”€β”€ Cargo.lock
└── README.md

Hacking

Install just to run project-specific commands.

# Install `cargo` via rustup if you don't already have it.
curl https://sh.rustup.rs -sSf | sh

# Install just
cargo install just

You can view the list of available development commands with just -ls.

Ref: github.com/casey/just