# Windrose > Windrose documentation: launch and trade tokens quoted in your own currency. Guides, protocol reference, API and self-hosting. - [Welcome to Windrose](https://docs.windrose.market/index.md): Launch and trade tokens quoted in your own currency: how Windrose works, where it runs, and where to go next. - [Launch a token in five minutes](https://docs.windrose.market/quickstart.md): From an empty wallet to a live bonding curve: connect, fund, choose a currency, fill the form, confirm one transaction. - [Networks](https://docs.windrose.market/networks.md): The chains Windrose runs on, with chain ids, gas tokens, dollars, explorers, faucets and RPC endpoints. - [How it works](https://docs.windrose.market/concepts/how-it-works.md): The life of a launch from creation to a locked Uniswap v4 pool, and who does what along the way. - [Bonding curve](https://docs.windrose.market/concepts/bonding-curve.md): Constant-product pricing with virtual reserves: the numbers behind every launch, the buy and sell formulas, and a worked example. - [Graduation](https://docs.windrose.market/concepts/graduation.md): How a filled curve becomes a Uniswap v4 pool with liquidity locked forever, and what changes for traders afterwards. - [Currencies](https://docs.windrose.market/concepts/currencies.md): The three tiers of currency on Windrose, how the 60 Windrose currencies are named, and what the registry can and cannot change. - [Vaults](https://docs.windrose.market/concepts/vaults.md): One dollar-backed vault per Windrose currency: minting, redeeming, the collateral accounting, haircuts, and what backers put in and take out. - [Oracles](https://docs.windrose.market/concepts/oracles.md): Where FX rates come from, what fresh and stale mean for fees and backers, and the trust assumption behind each adapter. - [Fees](https://docs.windrose.market/concepts/fees.md): Every fee in the protocol in one table: who pays, who receives, when it applies and how it is claimed. - [Create a token](https://docs.windrose.market/guide/create-a-token.md): The create page field by field: currency, token details, image, dev buy, what it costs and what can never be changed. - [Trading](https://docs.windrose.market/guide/trading.md): Buying and selling on the curve: paying in the launch currency or the dollar, reading a quote, slippage, approvals, and what changes after graduation. - [Currencies and minting](https://docs.windrose.market/guide/currencies-and-minting.md): Getting a Windrose currency from its vault, redeeming it back to dollars, reading the fees, and what the display-currency selector does. - [Earn by backing a currency](https://docs.windrose.market/guide/earn.md): Deposit dollars into a Windrose currency vault, earn 80% of its fees, take the FX risk, and read the vault's numbers before you do. - [Portfolio](https://docs.windrose.market/guide/portfolio.md): Your token holdings, backer shares and creator fees in one place, and how creator fees are claimed. - [Testnets](https://docs.windrose.market/guide/testnets.md): Try every flow with nothing at stake on Robinhood testnet or Arc testnet: faucets, test dollars, the network switcher and deep links. - [Risks](https://docs.windrose.market/safety/risks.md): What can go wrong on Windrose: audit status, oracle trust, vault FX risk, curve pricing, admin keys, chain-specific rules and testnets. - [FAQ](https://docs.windrose.market/safety/faq.md): Short answers to the questions traders, creators and backers ask most about launches, currencies, vaults, fees and safety. - [Architecture](https://docs.windrose.market/protocol/architecture.md): The contracts, the off-chain services and the design decisions behind Windrose, as deployed today. - [Addresses](https://docs.windrose.market/protocol/addresses.md): Every deployed contract, currency token and vault on Robinhood Chain, Robinhood testnet and Arc testnet, with explorer links. - [Units and conventions](https://docs.windrose.market/protocol/units.md): Decimals, fixed-point formats and the quote-unit convention every contract, indexer column and price on Windrose follows. - [Chain notes](https://docs.windrose.market/protocol/chain-notes.md): What is different about Arc and Robinhood Chain, and what the contracts and services do about it. - [CurrencyRegistry](https://docs.windrose.market/protocol/contracts/currency-registry.md): The owner-managed table that decides which ERC-20 stands in for each currency, holds the active oracle and deploys synthetic token and vault pairs. - [LaunchFactory](https://docs.windrose.market/protocol/contracts/launch-factory.md): Creates launches: a fixed-supply LaunchToken minted to a fresh BondingCurve clone sized in dollars at the oracle rate, with an optional first buy by the creator. - [BondingCurve](https://docs.windrose.market/protocol/contracts/bonding-curve.md): The per-launch constant-product curve with virtual reserves: quotes, buys, sells, the graduation target, pool seeding and pull-claimed fees. - [Router](https://docs.windrose.market/protocol/contracts/router.md): The one contract traders approve: dollar-in and dollar-out trading on any curve, quote-asset trading with deadlines, refunds of untaken quote and automatic graduation. - [FxVault and SynthToken](https://docs.windrose.market/protocol/contracts/fx-vault.md): One vault per synthetic currency: mint and redeem at the oracle rate, underwriter equity and shares, collateral ratio, the pro-rata haircut, fees, pausing and events. - [Oracles](https://docs.windrose.market/protocol/contracts/oracles.md): The IFxOracle interface, the shared freshness rules, and the keeper, Pyth and Chainlink adapters: what each trusts and which one is live. - [LiquidityLocker](https://docs.windrose.market/protocol/contracts/liquidity-locker.md): Holds every graduated Uniswap v4 position forever. The only thing it can do is collect swap fees. - [Launch lifecycle](https://docs.windrose.market/protocol/integrate/launch-lifecycle.md): End to end for builders: read the registry, create a launch, quote and trade through the router, detect graduation, read the pool price and follow events, with viem and cast. - [Vault operations](https://docs.windrose.market/protocol/integrate/vault-operations.md): Mint, redeem, deposit and withdraw against an FxVault with viem: previews, status, stale prices, price-update payloads and what changes if the oracle changes. - [ABIs and the chain registry](https://docs.windrose.market/protocol/integrate/abis-and-registry.md): The @launchpad/abis package: ABIs, the chain registry, deployment files, the generator scripts for token lists and logos, and how the web app and indexer resolve addresses. - [Security model](https://docs.windrose.market/protocol/integrate/security-model.md): The threat model as implemented: oracle risk, vault solvency, curve manipulation, graduation griefing, the admin surface, reentrancy, upgradeability, the blocklist, audit status and the test suite. - [API overview](https://docs.windrose.market/api/index.md): Public GraphQL and HTTP endpoints for launches, trades, candles, holders, currencies, vaults and FX rates on every chain Windrose runs on. - [GraphQL conventions](https://docs.windrose.market/api/graphql.md): How the Windrose GraphQL API is shaped: one query per table, cursor pagination, filter operators, relations, and the units every number is in. - [Launches](https://docs.windrose.market/api/queries/launches.md): The launch table: one row per token with its curve parameters, progress towards graduation, last price, volume, trade and holder counts. - [Trades](https://docs.windrose.market/api/queries/trades.md): The trade table: every curve buy and sell, plus Uniswap v4 swaps on chains where pool swaps are indexed, with execution price and fee. - [Candles](https://docs.windrose.market/api/queries/candles.md): 1-minute and 1-hour OHLC candles per launch in the launch currency, with volume and trade counts, ready for a chart. - [Holders](https://docs.windrose.market/api/queries/holders.md): The holder table: current launch token balances per address, derived from Transfer events, for holder lists and wallet portfolios. - [Currencies](https://docs.windrose.market/api/queries/currencies.md): The currency table: every registered code with its quote asset, tier, vault and synthetic token, plus the latest oracle rate. - [Vaults](https://docs.windrose.market/api/queries/vaults.md): The vaultSnapshot and vaultEvent tables: collateral, liability, equity and collateral ratio of every Windrose currency vault, and each mint, redeem, deposit, withdraw and donation. - [Rates](https://docs.windrose.market/api/queries/rates.md): The rate table: every FX rate the keeper oracle has posted, per currency code, for rate history and freshness checks. - [Fee claims](https://docs.windrose.market/api/queries/fee-claims.md): The feeClaim table: every creator fee claim and protocol fee sweep from a bonding curve, with recipient and amount. - [Run a GraphQL query](https://docs.windrose.market/api-reference/graphql/run-a-graphql-query.md): Executes one GraphQL operation against the indexer of the selected chain. Every table has a singular query by primary key and a plural query with `where`, `orderBy`, `orderDirection`, `limit` (max 1000) and `after` / `before` cursors. Note the plural names `launchs` and `currencys`. Bigint columns a… - [Liveness](https://docs.windrose.market/api-reference/indexer-status/liveness.md): Returns `200` with an empty body as soon as the indexer process is up, before historical indexing has finished. Use it for process monitoring, not for "is the data complete". - [Readiness](https://docs.windrose.market/api-reference/indexer-status/readiness.md): Returns `200` once the historical backfill from the deployment block is complete and the indexer is following the chain head. Until then it answers `503`. Query the GraphQL API only after this returns `200`, or expect partial data. - [Indexing progress](https://docs.windrose.market/api-reference/indexer-status/indexing-progress.md): The latest indexed block per chain. Each indexer follows exactly one chain, keyed by its registry key (`robinhood`, `robinhood-testnet` or `arc-testnet`). Compare `block.number` with the chain head to measure lag. - [Prometheus metrics](https://docs.windrose.market/api-reference/indexer-status/prometheus-metrics.md): Ponder's metrics in Prometheus text exposition format (`ponder_indexing_*`, `ponder_sync_*`, `ponder_http_server_*` and Node.js process metrics). - [List chains](https://docs.windrose.market/api-reference/web-app/list-chains.md): Every chain in the registry (`packages/abis/chains.json`) with whether its deployment file exists right now, the dollar and gas token symbols, and the RPC and indexer URL the app uses for it. `defaultChainId` is the chain a first visit lands on. Served by the web app with `cache-control: no-store`;… - [Contract addresses for a chain](https://docs.windrose.market/api-reference/web-app/contract-addresses-for-a-chain.md): The contract addresses the app uses for one chain, read from `packages/abis/deployments/.json` on every request (`source: deployment-file`). For the default chain only, when the file is absent, the addresses can come from `NEXT_PUBLIC_*` environment variables (`source: env`). When neither y… - [Self-hosting](https://docs.windrose.market/operate/self-hosting.md): Run the keeper, the indexer and the web app on one box behind a reverse proxy. - [Indexer](https://docs.windrose.market/operate/indexer.md): Run the Ponder indexer that serves launches, trades, candles, holders, currencies, vaults and rates over GraphQL. - [Keeper](https://docs.windrose.market/operate/keeper.md): Run the FX keeper that posts rates to the KeeperFxOracle for every registered currency. - [Web app](https://docs.windrose.market/operate/web-app.md): Build and run the Next.js app, wire it to an indexer per chain, and understand what gates the chain switcher. - [Deploy contracts](https://docs.windrose.market/operate/deploy-contracts.md): Deploy the protocol to a testnet or a mainnet with the Foundry scripts, seed it, and verify it on Blockscout. - [Add a chain](https://docs.windrose.market/operate/add-a-chain.md): What a chain needs before Windrose can run on it, and the checklist to register, deploy and serve it. - [Local development](https://docs.windrose.market/operate/local-development.md): Run the whole stack against a local anvil, regenerate ABIs, and run the contract test suite. ## OpenAPI Specs - [windrose](/openapi/windrose.yaml) ## Optional - [windrose.market](https://windrose.market)