Go to file
Liviu b45682d578 feat(corebook): CoreBookClient + AereCoreBookClient selector fixes + AERE_COREBOOK markets gate
- CoreBookClient: full read/write surface for AereCoreBookV0 (placeGTC/IOC/
  withSlippage/Protected, cancel, claim base+quote, flushFees; bestBid/bestAsk/
  marketInfo/depth/openOrdersOf via Lens), price math mirrors (_computeQuote,
  _lockBuyFunds incl. 256-wei buffer), orderId derivation (pre-incremented
  nonce keccak), event decode for OrderPlaced/Filled/OrderCancelled/Claimed.
  Verified 63/63 against ethers v6 ground truth.
- AereCoreBookClient (pre-existing): fixed 11 wrong read selectors (bestBid,
  bestAsk, pendingSinkFee, TAKER_FEE_BPS, PRICE_TICK, LOT_SIZE, decimals
  factors, PRICE_SCALE, cancel-delay constants) - every read would have
  thrown before.
- addresses.ts: AERE_COREBOOK = { markets: {} } - founder gate, no market
  listed until explicit approval.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-06-11 10:44:18 +03:00
examples feat(sdk): SDK clients for the 2026-06-08 ship batch 2026-06-08 03:33:52 +03:00
src feat(corebook): CoreBookClient + AereCoreBookClient selector fixes + AERE_COREBOOK markets gate 2026-06-11 10:44:18 +03:00
.gitignore v0.3.0 — align with live 16-contract mainnet (genesis-v2) 2026-05-31 00:53:47 +03:00
package-lock.json v0.3.0 — align with live 16-contract mainnet (genesis-v2) 2026-05-31 00:53:47 +03:00
package.json v0.16.1 — Tier 1.14–1.16 additions, Tier 1.17 reverted (AereUSDC removed) 2026-06-01 14:58:41 +03:00
README.md v0.3.3 — remove AereUSD/dUSD + AereLending (AERE is the only token) 2026-05-31 02:48:01 +03:00
tsconfig.json Initial @aere/sdk v0.1.0 — typed contract clients for AERE L1 2026-05-03 16:09:06 +03:00

@aere/sdk

Official AERE Network TypeScript SDK. Wraps ethers v6 with typed contract clients for every deployed AERE L1 contract.

SDK version: 0.3.0 Last updated: 2026-05-31 Network state at this release: 16 contracts live on chain ID 2800.


Network parameters

Chain name AERE Network
Chain ID 2800 (0xAF0)
Consensus Hyperledger Besu QBFT, 1-second blocks, sub-second finality, 3 validators
Native token AERE (18 decimals)
Max supply 2,800,000,000 AERE (capped at genesis-v2, 2026-05-07)
HTTP RPC https://rpc.aere.network
WebSocket RPC wss://wss.aere.network
Explorer (Blockscout) https://explorer.aere.network
Indexer REST https://api.aere.network

Genesis allocation (2,800,000,000 AERE)

Wallet Allocation Address
Strategic Investor 100,000,000 0xaee2f3989f0AB23296Fa3b92247fe67587141311
Foundation (chain admin) 180,000,000 0x0243A4f47D44b40b65D33f20329dE20D00c6f3C3
Mining Reserve 1,400,000,000 0x038f59A40ceeCd599A4588E4B0ff4642a0fbfFB8
Ecosystem Reserve 560,000,000 0xB6a364F47d21DC2CbEB803565c111c1026e11C75
Team Reserve 420,000,000 0x7968C438204a78B4e032fcFFd9A56Edb15fdCCdf
Airdrop Reserve 140,000,000 0x261913fA73D6F109382F1aE98Ff6822ff03628B1

Deployed contracts (16 — all owned by Foundation)

Contract Address Purpose
WAERE 0x7e84d7d66d5da4cfE46Da67CDEeB05B323e1f5e8 Wrapped AERE (WETH9-style ERC-20)
AereTreasury 0x687933AE7ea4927867AC227F1b60d476003e6119 Timelocked foundation treasury
AereOracle 0xf0A13823A4bFa86358Fe30aaf1f44A36AcbCf399 Multi-reporter median price feed (BTC/USD + ETH/USD live)
AereIdentity 0x658dD2CD1F798AAb19fEc8FF69A270B2d192CaD1 DID registry, revocable attestor claims (Sumsub-backed KYC)
AereFaucet 0xDdBe942aD9eB0F3E7C541BdCF7CC2cfA29d35aE4 0.05 AERE drip per 24h
AereCardEscrow 0xD1f7f12830AdCFd1B7676C8460B9e30602b1f059 Bank28 card-settlement escrow
AereSecurity 0xaD305e4D91e0a9160Bd338Fd1ecb2Ee1645daC44 Sanctions / pause module
AereStaking 0xAbDb01d9A4f41792129b2654Fb6DDB9689360DEc Delegated staking · 8% APY · 7-day unbonding
AereConsensus 0xF8bDDad4aDACF9d38711e8f9aFC8a2697aBF0d47 QBFT validator bookkeeping
AereSwapFactory 0xf0a8df7BDc25721892475B21271e52D77B0e84DC V2 AMM factory · 0.3% fee (router pending)
AereBridge 0x7eDa66cd93baAE19530839Bbb28ee36aC8aFAd68 Federated lock-and-release bridge (relayer pending)
AereMiningSubscription 0xDad25d2163187DF8AAEcf9EA31b6355315Bb69f1 4-tier mining subscriptions (10/50/200/100 AERE per 30 days)
AereNFT 0x3f9A9D9CAB005327869396C69bE226ef98039f1c ERC-721 + EIP-2981 royalties
AereNFTMarketplace 0x852e07F2619F7F4aD10d9f2aC681310301d99528 On-chain NFT marketplace · 2.5% protocol fee
AereGovernanceStaked 0x8D77C888e439C4fADb2e23F1567a0A1965F80bCb Stake-weighted governance (reads voting power from AereStaking)
AereLockedStaking 0x21108c28A849b05aE6b7a3a5bc435C9Bc897E7Ad Fixed-term locks: 30d/10%, 90d/15%, 180d/22%, 365d/30% APY

Install

npm i @aere/sdk ethers

Quickstart

import { AERE_MAINNET } from '@aere/sdk/addresses';
import { ethers } from 'ethers';

const provider = new ethers.JsonRpcProvider(AERE_MAINNET.rpc);

// Read a balance
const bal = await provider.getBalance(AERE_MAINNET.Foundation);
console.log(ethers.formatEther(bal), 'AERE');

// Subscribe to incoming WAERE transfers for an address
const waere = new ethers.Contract(
  AERE_MAINNET.WAERE,
  ['event Transfer(address indexed from, address indexed to, uint256 value)'],
  provider,
);
waere.on('Transfer', (from, to, value) => {
  if (to.toLowerCase() === '0xMyHotWallet'.toLowerCase()) {
    console.log(`got ${ethers.formatEther(value)} WAERE from ${from}`);
  }
});

// Stake 100 AERE in the 90-day locked staking tier (15% APY)
const signer = new ethers.Wallet(process.env.PRIVATE_KEY!, provider);
const locked = new ethers.Contract(
  AERE_MAINNET.AereLockedStaking,
  ['function stake(uint8 tier) payable returns (uint256)'],
  signer,
);
const tx = await locked.stake(1, { value: ethers.parseEther('100') });
await tx.wait();

Roadmap (not in this release)

These are referenced in the AERE whitepaper but NOT yet deployed on chain 2800:

  • DEX: AereSwapRouter + bridged stablecoin + initial WAERE liquidity pool
  • Bridge: cross-chain relayer + counterparty contracts on Ethereum / BSC / Polygon
  • Lending market (collateralised AERE / WAERE)
  • Yield farm (LP rewards)
  • AereVesting (on-chain vesting schedules for Team / Strategic allocations)
  • AereInsurancePool, AereLaunchpad, AereAirdrop, AereSubscriptions
  • AereNameService (.aere registry)
  • ERC-4337 account abstraction stack (EntryPoint, SmartAccountFactory, Paymaster)
  • Payment channels, Lightning channels, HTLC
  • ZK rollups, Plasma child chains
  • AereTravelRule (MiCA-compliant VASP transfer disclosures)

Each of these has an existing front-end shell on aere.network displaying a "coming soon" notice until the underlying contract ships.

Architectural notes

  • Non-custodial. End users hold their own keys. Consumer apps (e.g. Bank28) can use Privy / Magic / Web3Auth to provision wallets via email/social, then pass that signer into the SDK.
  • Fiat rails are out of scope. AERE is the on-chain settlement layer; fiat IBANs / cards / SEPA come from a BaaS partner (Striga, Baanx, Kulipa, etc.).
  • Oracle is single-reporter today. BTC/USD and ETH/USD feeds are pushed every 90s by a single reporter container. A second reporter is on the roadmap for redundancy.
  • 3 validators today. QBFT fault tolerance is f=0 at this validator count — single failure halts the chain until the validator returns. A path to 5 validators (f=1) is staged.
  • AereBridge is 1-of-1 signer. Multi-sig threshold expansion happens before any value flows.

Source

License

MIT