# Flashnet Build > Developer documentation for Flashnet markets and Flashnet Execution. Flashnet markets are a Bitcoin-native AMM (constant-product, bonding curve, and concentrated liquidity pools) accessed through `@flashnet/sdk` on Spark. Flashnet Execution is an EVM-compatible runtime where one signed intent moves assets in from a Spark wallet, runs an action (a market swap or a user contract), and dispatches results back. Both products use the Spark identity key for authentication, are self-custodial, and settle on Bitcoin through Spark. Product and integration docs live at https://docs.flashnet.xyz. - AMM SDK: `npm install @flashnet/sdk @buildonspark/spark-sdk` - The AMM supports constant-product (V2), bonding curve (single-sided), and concentrated liquidity (V3) pools - Trust model: intent-based settlement via validators in TEEs; users can unilaterally exit at any time - Flashnet Execution runs `baseFeePerGas = 0` and `maxPriorityFeePerGas = 0`. Users pay no gas; the operator covers inclusion - Spark identity key controls both a Spark address and an EVM address. One key, one signature surface - Execution intents carry Spark deposits + an EVM action + an expiry, signed once - Error codes follow the format FSAG-XXXX (AMM) and revert selectors decoded via `decodeRevertReason` (Execution) - Product and non-developer docs: https://docs.flashnet.xyz ## Docs ### AMM - [AMM Overview](https://build.flashnet.xyz/products/flashnet-amm/overview.md): Automated market maker for BTC and USDB on Spark with constant-product, bonding curve, and V3 pools - [How It Works](https://build.flashnet.xyz/products/flashnet-amm/how-it-works.md): AMM mechanics, price curves, trade execution, and settlement flow - [Setup](https://build.flashnet.xyz/products/flashnet-amm/setup.md): Install @flashnet/sdk, initialize a Spark wallet, and create a FlashnetClient - [Config & Gating](https://build.flashnet.xyz/products/flashnet-amm/config.md): Pool configuration parameters and feature gating options - [Pool Creation](https://build.flashnet.xyz/products/flashnet-amm/creation.md): Create constant-product, bonding curve, or concentrated liquidity pools - [Liquidity](https://build.flashnet.xyz/products/flashnet-amm/liquidity.md): Add and remove liquidity from AMM pools - [Swaps](https://build.flashnet.xyz/products/flashnet-amm/swaps.md): Execute token swaps with slippage protection - [Route Swaps](https://build.flashnet.xyz/products/flashnet-amm/route-swaps.md): Multi-hop swaps across multiple liquidity pools - [Lightning Payments](https://build.flashnet.xyz/products/flashnet-amm/lightning-payments.md): Pay Lightning Network invoices directly through AMM swaps - [Querying Pools](https://build.flashnet.xyz/products/flashnet-amm/pools.md): Fetch pool state, reserves, pricing data, and pool lists - [Fees](https://build.flashnet.xyz/products/flashnet-amm/fees.md): Fee structure, collection mechanics, and distribution to LPs and hosts - [Hosts](https://build.flashnet.xyz/products/flashnet-amm/hosts.md): Register as an AMM host, earn fees, and configure host namespaces - [Error Handling](https://build.flashnet.xyz/products/flashnet-amm/errors.md): FSAG-XXXX error codes, recovery strategies, and automatic clawback mechanisms ### Concentrated Liquidity (V3) - [Concentrated Liquidity](https://build.flashnet.xyz/products/flashnet-amm/concentrated-liquidity.md): Provide liquidity within custom price ranges for higher capital efficiency - [Creating V3 Pools](https://build.flashnet.xyz/products/flashnet-amm/concentrated-creation.md): Create concentrated liquidity pools with tick spacing and initial price - [Managing Positions](https://build.flashnet.xyz/products/flashnet-amm/concentrated-positions.md): Open, adjust, and close concentrated liquidity positions - [Free Balances](https://build.flashnet.xyz/products/flashnet-amm/concentrated-balances.md): Query withdrawable token balances from V3 positions ### Position Locks - [Lock Overview](https://build.flashnet.xyz/products/flashnet-amm/lock-overview.md): Time-locked liquidity positions and their use cases - [Create a Lock](https://build.flashnet.xyz/products/flashnet-amm/lock-create.md): Lock an LP position for a fixed duration - [Query Locks](https://build.flashnet.xyz/products/flashnet-amm/lock-query.md): Read lock state and unlock timing ### Flashnet Execution - [Execution Overview](https://build.flashnet.xyz/products/execution/overview.md): Programmable settlement on Spark balances via one signed intent - [Quickstart](https://build.flashnet.xyz/products/execution/quickstart.md): Install the SDK, authenticate, and swap BTC for USDB in one signed intent - [Accounts](https://build.flashnet.xyz/products/execution/accounts.md): One Spark identity key controls both the Spark address and the EVM address; no separate signup or funding - [Deposits](https://build.flashnet.xyz/products/execution/deposits.md): Move sats and Spark tokens onto Execution by referencing Spark transfer ids in a signed intent - [Swaps](https://build.flashnet.xyz/products/execution/swaps.md): Use TradingClient to deposit, swap on Flashnet pools, and sweep output back to Spark in one intent - [Withdrawals](https://build.flashnet.xyz/products/execution/withdrawals.md): Sweep Execution balances back to Spark via SparkGateway withdraw functions - [Intents](https://build.flashnet.xyz/products/execution/intents.md): The signed unit of work (transfers + action + expiry), the canonical hash, and the status lifecycle - [Executing](https://build.flashnet.xyz/products/execution/executing.md): Run arbitrary signed EVM transactions through ExecutionClient.execute with optional bundled deposits - [Reading State](https://build.flashnet.xyz/products/execution/reading-state.md): Token info, balances, allowances, nonces, and EIP-1559 fee helpers - [Spark Tokens](https://build.flashnet.xyz/products/execution/spark-tokens.md): How Spark-native assets map to ERC20 contracts on Execution via deterministic CREATE2 - [How it works](https://build.flashnet.xyz/products/execution/how-it-works.md): Sequencer, validators, TEEs, deposit oracle, finality, and replay safety - [Conductor](https://build.flashnet.xyz/products/execution/conductor.md): Raw calldata encoders for the swap router that TradingClient calls under the hood - [Wire Reference](https://build.flashnet.xyz/products/execution/reference.md): Gateway REST endpoints, canonical intent message schema, and status enum ## Examples - [AMM Setup & First Swap](https://build.flashnet.xyz/products/flashnet-amm/setup.md): Install the SDK, initialize a Spark wallet, create a FlashnetClient, and execute your first swap - [Execution Swap in One Intent](https://build.flashnet.xyz/products/execution/quickstart.md): Authenticate, build a TradingClient, and swap BTC for USDB in a single signed intent ## API Reference - [Execution Wire Format](https://build.flashnet.xyz/products/execution/reference.md): Gateway endpoints, canonical intent schema, status enum, and auth flow ## Related - [Product and integration docs](https://docs.flashnet.xyz): Overview, architecture, Orchestra (cross-chain), USDB stablecoin - [Flashnet index](https://docs.flashnet.xyz/llms.txt): Machine-readable index of the product docs ## Optional - [Swap History](https://build.flashnet.xyz/products/flashnet-amm/history.md): Query historical swap records and trade data for analytics - [Advanced AMM](https://build.flashnet.xyz/products/flashnet-amm/advanced.md): Advanced AMM configuration, optimization techniques, and edge cases - [Escrow](https://build.flashnet.xyz/products/flashnet-amm/escrow.md): Escrow flow used by certain AMM operations