Skip to content

Repository files navigation

Umia Protocol smart contracts

Solidity contracts for Umia: token launches (LBP auctions), Uniswap v4 spot markets, futarchic decision markets, and onchain treasury governance.

Quick start

forge build
forge test

Verbose output:

forge test -vvv

Run focused suites:

forge test --match-path test/governance/*
forge test --match-path test/markets/*
forge test --match-path test/launchpad/*
forge test --match-path test/periphery/*
forge test --match-path test/reclaim/*
forge test --match-path test/liquidation/*

Format before committing:

forge fmt

Source layout

Path Role
src/core/ Hub registry, market manager, market stake, swap router, governance executor
src/launchpad/ LBP factory and auction strategy
src/periphery/ TWAP oracle, validation hooks, Uniswap v4 hook, TWAP unlock vault
src/tokens/ Venture ERC-20 token
src/libraries/ CPMM math, governance types/actions, Uniswap helpers
src/liquidation/ Treasury liquidation
src/reclaim/ Social recovery / claims utilities
script/ Deployment scripts
test/ Foundry test suites
docs/ Protocol and contract reference docs
certora/ Formal verification specs

Protocol overview

  1. Launch — A venture is created via UmiaHub, runs a tailored auction through UmiaLBP, and migrates liquidity to a Uniswap v4 spot pool.
  2. Trade — The spot pool provides price discovery; UmiaHook routes fees and oracle observations.
  3. GovernUmiaMarketCore runs decision markets: users split venture tokens into virtual token positions per proposal (a minimal balanceOf ledger, not full ERC-6909), trade on CPMM pools, and settle by TWAP. The winning proposal executes against the venture treasury through GovernanceExecutor.

See Architecture for contract-level detail and data flows.

Documentation

Protocol

Contract references

Full index: Contract Reference

Core

Periphery

Launchpad

Governance libraries

Deployment scripts

Script Purpose
script/Deploy.s.sol Deploy Umia contracts and wire hub registry pointers
script/DeployV4Infra.s.sol Deploy local Uniswap v4 infra for dev chains
script/DeployTestnetToken.s.sol Deploy a test ERC-20 for local/testnet use
script/MineUmiaHookSalt.s.sol Mine CREATE2 salt for UmiaHook deployment

For production deployment steps, follow New Chain Deployment.

Licensing

Contracts are licensed per file, with the SPDX identifier on line 1 as the source of truth. Full texts are in licenses/.

Surface License What
Integration MIT src/interfaces/**, the shared type libraries, and generic math. Build against Umia freely.
Mechanism BUSL-1.1 Markets, settlement, governance, launchpad, hook, and vaults. Converts to MIT on the Change Date.
Vendored MIT src/reclaim/** (Reclaim Protocol).

BUSL-1.1 permits all non-production use — development, testing, testnet deploys, security research and audits — and restricts production deployment of a competing decision-market or venture-funding protocol until the Change Date (2030-08-11), when it converts to MIT. The Licensor may grant further exemptions in writing.

bash check-licenses.sh enforces the map in CI. MetaVesT is AGPL-3.0, so src/ declares minimal local interfaces instead of importing it; the same check guards that boundary.

About

Umia Protocol

Resources

Security policy

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages