Skip to main content
Canonical API from the offline package (@pose-tracker/react-native-pose-estimation). The light package shares the same surface; light-only options are marked below. See also: WebViewPoseView · Exercises · Events · Features & plans

PoseTrackerProvider

Options

PoseTrackerClientOptions extends handshake ConfigureOptions plus runtime knobs.

Shared (offline + light)

Light-only

Offline has no model / modelUrl / CDN options — MoveNet + TF.js are bundled.

usePoseTracker

Must run under PoseTrackerProvider. Pass optional typed callbacks; returns the context value below.

Context fields

Methods

StartExerciseOptions

PoseTrackerClient (escape hatch)

Same methods as the hook, plus: | Method | Notes | |---|---|---| | getStatus() / getMode() / getError() / getManifest() | Introspection. | | getPlanType() | 'free', 'developer', … or null (keyless). | | getFeatures() | Resolved feature flags. | | getAvailableExercises() | Manifest FSM list (empty outside full-engine). | | getAvailableCustomExercises() | Engine-bundle customs (jump_analysis, air_time_jump, …). | | getCurrentExerciseId() | Active session id or null. | | getQualityState() / getColdStartMode() | Quality + last preload cold-start. | | fetchSkeleton(uuid) | GET /api/sdk/skeletonSkeletonDefinition. | | dispose() | Tear down backend, session, listeners. |
Injectables (backend, engineLoader, fileStore, usageTracker) exist for tests / advanced hosts — prefer TypeScript types in the package for those.