Skip to content

bleu/cow-programmatic-orders-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

192 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Programmatic Orders API

Indexes on-chain events from CoW Protocol's ComposableCoW contract, decodes programmatic order types (TWAP, Stop Loss, Perpetual Swap, Good After Time, Trade Above Threshold), and serves the data through a GraphQL API. Built with Ponder by @bleu for CoW Protocol.

Tech stack

  • Ponder 0.16.x -- blockchain indexing framework
  • TypeScript
  • viem -- Ethereum interactions and ABI encoding
  • Hono -- API routing
  • PostgreSQL

Quick start

Requires Node.js >= 18.14, pnpm, and Docker.

git clone https://github.com/bleu/cow-programmatic-orders-api.git
cd cow-programmatic-orders-api
pnpm install

Copy the env file and configure your RPC endpoints:

cp .env.example .env.local

Open .env.local and set MAINNET_RPC_URL and GNOSIS_RPC_URL.

Start PostgreSQL and run the indexer:

docker compose up -d
pnpm dev

The GraphQL API is at http://localhost:42069 once the dev server starts.

Commands

Command What it does
pnpm dev Start the indexer in dev mode
pnpm start Start in production mode
pnpm codegen Regenerate types after config or schema changes
pnpm typecheck Run TypeScript type checking
pnpm lint Run ESLint
pnpm test Run tests

Documentation

Links

License

Open source.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors