Paraape
Get started

Run the stack

Contracts, indexer, keeper, and the web app, in that order.

Paraape on testnet is four processes. Addresses from one DeployParaape have to match in every env file. An older factory left in the shell overrides .env.

Order

  1. Deploy the contracts. Leave STYLUS_RISK_ENGINE empty.
  2. Start the indexer at the factory creation block.
  3. Start the keeper against that indexer and that PriceObserver.
  4. Start the web app with the same factory, locker, PoolManager, and USDG.
  5. Optional: demo swap to move the pool.

A fresh market needs on the order of an hour of successful records before the entry guard allows a purchase. The guard looks back an hour. Without that history, buys revert.

What each process owns

ProcessDoesDoes not
WebQuotes, purchases, deposits, settle, release, challengeRecord the oracle on a timer
IndexerMarkets, policies, LP rows, activity, keeper targetsSend transactions
KeeperrecordPool / record about every 35 secondssettle or release
Demo swapTrades the demo poolOpen markets

Repo map

Path
apps/contracts-solidityVault, factory, oracle, deploy scripts
apps/contracts-stylusSame premium math in Rust. Not activated on this testnet
apps/indexerPonder
apps/keeperOracle recorder
apps/webLanding, Protect, Underwrite, Dashboard
apps/demo-swapTestnet pool trades
docs/PRD.mdEngineering spec. This site does not replace it
apps/docsThis site

Each app README is the command list. This section is the map.

On this page