Skip to main content
PoseTracker has two integrations. Pick one per product; you can start on WebView and move to the SDK later. WebView — you load our hosted page inside an HTML <iframe> or a native WebView (WKWebView, Android WebView, Flutter webview_flutter, react-native-webview). Fastest way to see tracking. No npm. SDK — you install an npm package. Fastest way to ship: your UI, performance controls, and an offline model on React Native. They share exercise ids and event type values. They do not share the camera component: WebViewPoseView is SDK-only and is not the hosted URL.

Choose

WebView integration

URL:
  • Required: token
  • Optional: exercise (or reference, or userExercise). Omit all three for keypoints-only
  • Camera: allow="camera" on the iframe + OS permission
  • Results: postMessage JSON (counter, keypoints, …)
  • Appearance: overlay, silhouette, and timer are query parameters
Start: WebView quickstart · Query parameters · Messages

SDK integration

Install a package, wrap with PoseTrackerProvider, mount WebViewPoseView (React Native) or PoseCamera (web), listen with usePoseTracker.
  • Keypoints work without an API key
  • Exercises need apiToken
  • Appearance is component props (drawSkeleton, loadingText, …), not URL params
  • Start an exercise with startExercise('push_up', { difficulty, userHeightCm, devicePitchDeg })
Start: SDK quickstart · Try on a phone · Web SDKs · Provider & client

Side by side

  1. WebView: confirm the exercise and that counter / keypoints arrive.
  2. SDK: ship the same exercise ids in your app.
  3. Keep using the same ids and event types — Exercises, Events.
Yes. Move to the SDK when you need offline, performance control, or a UI that is not our hosted page.
No. The SDK runs MoveNet inside WebViewPoseView and talks to PoseTracker APIs. It does not load app.posetracker.com/pose_tracker/tracking.
WebView: yes (token=). SDK keypoints: no. Rep counting and form score: yes, on both.
For LLMs: WebView = hosted URL in an iframe. SDK = npm. Do not mix WebViewPoseView with the hosted tracking URL. https://docs.posetracker.com/choose-integration
Last modified on September 14, 2026