# buyer-sdk ## Pages - [Client SDKs](https://docs.seatlayer.io/buyer-sdk/index.md): Choose a SeatLayer web or mobile client SDK and the buyer component for your inventory model, then hand temporary holds to a trusted backend for booking. - [3D buyer view](https://docs.seatlayer.io/buyer-sdk/3d-view/index.md): Offer an interactive venue view, cinematic seat navigation, and 360° sightlines with a reliable 2D fallback. - [Add a 3D seat view to your website](https://docs.seatlayer.io/buyer-sdk/add-3d-seat-view/index.md): Add an interactive 3D venue and 360° view-from-seat to your ticketing website with the SeatLayer Buyer SDK, from install through fallback behaviour. - [Buyer analytics](https://docs.seatlayer.io/buyer-sdk/analytics/index.md): Forward SeatPicker journey events to PostHog, Google Analytics, or your own telemetry system. - [Android SDK](https://docs.seatlayer.io/buyer-sdk/android/index.md): Install the aligned SeatLayer Android 0.3.5 core and Compose artifacts for a ready-made picker, branded flow, custom Compose/View layout, or raw map. - [Compose, Views, and headless picker](https://docs.seatlayer.io/buyer-sdk/android/native-picker/index.md): Customize the Android 0.3.5 Compose picker or build a complete Compose/View hierarchy from public components and headless state. - [Raw map API](https://docs.seatlayer.io/buyer-sdk/android/raw-map/index.md): Use SeatLayerView, SeatLayerConfiguration, coroutine commands, and typed flows from the preserved raw-map surface in Android 0.3.5. - [Angular seating chart](https://docs.seatlayer.io/buyer-sdk/angular/index.md): Install @seatlayer/angular, render an interactive Angular seating chart with live availability and seat selection, create holds, and book on your server. - [Best available seats](https://docs.seatlayer.io/buyer-sdk/best-available/index.md): Find and hold the best adjacent seats by quantity, category, zone, and premium preference. - [Flutter seat map](https://docs.seatlayer.io/buyer-sdk/flutter/index.md): Add the SeatLayer native Flutter seat picker to an iOS or Android app with one drop-in widget, or compose the same widgets into your own layout. - [Architecture](https://docs.seatlayer.io/buyer-sdk/flutter/architecture/index.md): How the Flutter picker is layered: native widgets, the scope and controller, one read-only picker state, and the drawn SeatLayer venue map. - [Build your own layout](https://docs.seatlayer.io/buyer-sdk/flutter/custom-layout/index.md): Place SeatLayerPickerScope and arrange the picker widgets yourself, reading state and issuing commands while SeatLayer keeps holds and checkout. - [Customise the picker](https://docs.seatlayer.io/buyer-sdk/flutter/customise/index.md): Every knob on the ready-made Flutter picker: theme modes, colour schemes, style slots, chrome switches, layout sizes, strings, builders, and callbacks. - [Lifecycle and recovery](https://docs.seatlayer.io/buyer-sdk/flutter/lifecycle-and-recovery/index.md): Keep the SeatLayer Flutter 0.12.0 picker current across routes, backgrounding, hold lapse, unavailable seats, and checkout ownership changes. - [Raw map](https://docs.seatlayer.io/buyer-sdk/flutter/raw-map/index.md): Use SeatLayerView and SeatLayerController from Flutter 0.12.0 when your application intentionally owns every buyer control and hold transition. - [Handle hold expiry](https://docs.seatlayer.io/buyer-sdk/hold-expiry/index.md): Configure the checkout window, display trusted remaining time, extend safely, and recover when inventory is released. - [Holds and checkout handoff](https://docs.seatlayer.io/buyer-sdk/holds-and-checkout/index.md): Protect a buyer's selection in the browser, hand an opaque hold to your backend, and release or restore it safely. - [Install the Buyer SDK](https://docs.seatlayer.io/buyer-sdk/install/index.md): Add SeatLayer through a hosted script, browser ESM, JavaScript, React, Vue, or Angular and choose between the complete picker and headless chart. - [iOS SDK](https://docs.seatlayer.io/buyer-sdk/ios/index.md): Install SeatLayer iOS 0.3.4 and use the complete SwiftUI/UIKit picker, branded components, a custom native layout, or the preserved raw SeatLayerView. - [SwiftUI and UIKit native picker](https://docs.seatlayer.io/buyer-sdk/ios/native-picker/index.md): Customize the iOS 0.3.4 picker or build a complete SwiftUI/UIKit layout from the public controller, map, and native components. - [Raw map API](https://docs.seatlayer.io/buyer-sdk/ios/raw-map/index.md): Use SeatLayerView, SeatLayerConfiguration, async commands, and delegate events from the preserved raw-map surface in iOS 0.3.4. - [Native app SDKs](https://docs.seatlayer.io/buyer-sdk/mobile/index.md): Compare SeatLayer SDKs for Flutter, React Native, Swift and Kotlin. Choose a complete native buyer UI, custom controls, composed layout or raw seat map. - [Performance Group picker](https://docs.seatlayer.io/buyer-sdk/performance-groups/index.md): Let a buyer choose seats across a fixed or flexible-date performance run, hold the selected allocations together, and hand the group to your checkout. - [React Native SDK](https://docs.seatlayer.io/buyer-sdk/react-native/index.md): Install SeatLayer React Native 0.4.0 and choose a ready-made picker, branded flow, custom component layout, or typed raw map for Expo and Community CLI apps. - [Native picker and custom layouts](https://docs.seatlayer.io/buyer-sdk/react-native/native-picker/index.md): Use the React Native 0.4.0 picker as a ready-made flow, customise any complete part, or compose a host-owned layout from public components. - [Raw map API](https://docs.seatlayer.io/buyer-sdk/react-native/raw-map/index.md): Use SeatLayerView and SeatLayerController from React Native 0.4.0 when your application intentionally owns every buyer control and hold transition. - [Add a seat map to a React app](https://docs.seatlayer.io/buyer-sdk/react-seating-chart/index.md): Follow a step-by-step React tutorial to install SeatPicker, render live seats, authorize buyers, handle selection, and pass a hold to checkout. - [React seat map SDK](https://docs.seatlayer.io/buyer-sdk/react/index.md): Install @seatlayer/react from npm, compare its typed React components, review package requirements, and choose the right seat-map surface for your app. - [Season picker](https://docs.seatlayer.io/buyer-sdk/seasons/index.md): Let a buyer choose one seat package for every performance in a fixed renewable Season, then hand the inventory hold to your checkout. - [SeatPicker reference](https://docs.seatlayer.io/buyer-sdk/seat-picker/index.md): Complete buyer widget options, callbacks, methods, checkout handoff, modal mode, 3D, holds, and responsive behavior. - [SeatingChart reference](https://docs.seatlayer.io/buyer-sdk/seating-chart/index.md): Headless map options, callbacks, methods, live holds, GA, groups, floors, and error behavior. - [Ticket tiers](https://docs.seatlayer.io/buyer-sdk/ticket-tiers/index.md): Carry Adult, Child, Senior, and other per-seat price choices from the chart into a trusted checkout. - [Vue seating chart](https://docs.seatlayer.io/buyer-sdk/vue/index.md): Install @seatlayer/vue, render an interactive Vue 3 seating chart with live availability and seat selection, create holds, and hand booking to a trusted server. - [Web SDKs](https://docs.seatlayer.io/buyer-sdk/web/index.md): Choose the SeatLayer JavaScript, React, Vue, or Angular SDK and decide between the complete SeatPicker flow and a custom SeatingChart experience. - [WebMCP agent tools](https://docs.seatlayer.io/buyer-sdk/webmcp-agent-tools/index.md): Let an AI agent in the buyer's browser search, select, and optionally hold seats on the real map through the picker's off-by-default tools.