Ninjucks Docs
A unified swap interface for Injective. One place to route swaps across Injective's DEX liquidity — with a floor you set, settled in a single transaction.
Introduction
Ninjucks routes a swap through Injective's on-chain DEX liquidity, enforces the minimum amount you're willing to receive, and settles the whole thing atomically — if it can't meet your floor, the transaction reverts and nothing moves.
We come from the Cardano community and are exploring an IBC interface between Cardano and Injective. Ninjucks is the first milestone: a simple, transparent swap layer to build that cross-chain flow on.
How it works
At a high level, every swap is one signed transaction:
- You choose a pair and an amount. Ninjucks quotes the expected output from the live orderbook.
- You set a max slippage; that becomes a hard minimum-receive floor.
- You sign. The aggregator routes the swap through a venue, checks the output clears your floor, and pays it to you — all in the same transaction.
- If the output would fall below your floor, the transaction reverts. You keep your funds.
Quickstart
- Open the app and pick a network (Testnet is live).
- Connect a wallet — Keplr, MetaMask, Rabby, or Brave.
- Pick the pair, enter an amount, review the expected output and minimum received.
- Hit Swap and approve in your wallet. Balances refresh once the swap settles.
Wallets
Ninjucks supports both Cosmos and EVM wallets. An EVM wallet works because Injective accounts and Ethereum accounts share the same key type — your EVM address maps to a matching Injective account, and the transaction is signed as EIP-712 typed data.
Cosmos-native signing.
EVM wallets, via EIP-712.
Your connection persists across reloads; use Disconnect next to your address to end the session.
Networks
injective-888 · swap INJ ↔ USDC against the live orderbook.Slippage & minimum received
The max slippage you choose sets your minimum received — the least output you'll accept. Ninjucks re-quotes the moment before you sign, so the floor always matches the exact amount and direction you're swapping.
Routing & settlement
Ninjucks forwards each swap to a DEX venue on Injective (HallSwap today, with room for more) and accounts for the result by balance difference: it measures what actually arrived and compares it to your floor. Every swap settles within its own transaction — funds are never parked in the contract, and a swap that can't meet its floor reverts in full.
Contract & verification
The contract is built with the standard cosmwasm/optimizer and a committed
Cargo.lock, so the build is reproducible — anyone can rebuild it and confirm the hash.
ninjucks.wasm SHA256 0c983abbc0373b28d4a7aa5a25fe059d36dc13604459a97c3a1ca1b01e888bb4
The mainnet governance proposal uploads this exact wasm; the on-chain code data_hash
equals the SHA256 above. Source and reproduction steps live in the
repository.
Roadmap
- Swap Live — unified swaps across Injective liquidity.
- Lend / Borrow Soon — a money-market interface.
- Cross-swap Soon — swaps across an IBC bridge to Cardano.
FAQ
Does Ninjucks charge a fee?
No protocol fee. You pay the underlying venue's trading fee and network gas, nothing on top.
Who controls my funds?
You do. Every swap moves funds only inside a transaction you sign yourself; the contract never holds balances between swaps.
Which assets can I swap?
On testnet, INJ ↔ USDC today. More pairs and venues follow as mainnet goes live.
Why does gas get simulated first?
Routing through the orderbook needs more gas than a plain transfer, so the app simulates the transaction and adds headroom, so swaps don't run out of gas mid-execution.