/genie-contracts

Powering Genie campaigns.

Primary LanguageTypeScriptGNU General Public License v3.0GPL-3.0

genie-contracts

🧞 Powering Genie campaigns.

Contracts

This repository has two main contracts:

  1. genie-airdrop: the contract to be instantiated per campaign, and which end users claim rewards from
    • phoenix-1: 1942 (code ID)
    • osmosis-1: 256 (code ID)
  2. genie-airdrop-factory: the factory contract to instantiate the genie-airdrop contract
    • phoenix-1: 1683 (code ID), terra1dcfnzx0lh27w7rjh69e6kl5838dc7yyjj3r3h84jmkjjf08kknuqxr0x3r (contract)
    • osmosis-1: 194 (code ID), osmo1vjq3e3fp4fcdnd83nmxk5764mlewwxjejsjmg9jyehgh5zklj0pslvs3na (contract)

Refer to their respective READMEs for more information about how they work.

Installing

  1. Install Rust 1.44.1+
  2. Install Docker for compiling and ensuring that builds have similar checksums
  3. Install wasm32-unknown-unknown for rust
# Check rust versions
rustc --version
cargo --version
rustup target list --installed
# If `wasm32-unknown-unknown` is not listed, install it:
rustup target add wasm32-unknown-unknown

Building

Run in the root of this project to produce an optimised build in the artifacts directory:

./build.sh

Testing

See ./scripts for details of the full E2E test using the pisco-1 testnet.