Fitness apps
Ship clear exercise demos inside workout flows, exercise details and coaching products—on any UI background.
A production-ready library for fitness apps and creators: 701 illustrated exercises, of which 544 are motion clips and 157 are static holds (planks, dead hangs etc.).
Same exercise catalog. Two consistent characters.
Drop the same transparent clip into light mode, dark mode, a brand colour, or any custom theme. Try it below.




Looping transparent WebP — 960px. One per animated exercise, in images/animations/<slug>.webp.
One library, two ways to publish
Use the same consistent exercise animations in a product UI or drop them over your own footage. The transparent master is built for both.
Ship clear exercise demos inside workout flows, exercise details and coaching products—on any UI background.
Layer the clips over Reels, Shorts, YouTube videos, course slides and posts without filming every variation yourself.
The full set covers 37 muscle areas per character (18 front + 19 back), with transparent layers for independent left/right highlights. Control colour and intensity in your UI.
Front + back · Independent L/R · Transparent WebP




















Auto cycling
Optimized preview. Each bundle includes full-resolution layers and a manifest.
A free sample of the paid dataset with the exact production assets — no signup, no watermarks. Browse it offline with the bundled viewer.
Every clip loops on a transparent background, so it sits on your dark theme, your brand colour, or a card — no white rectangle to hide.
Animated WebP keeps a real alpha channel and full colour at a fraction of the file size. GIF gives you neither — it dithers to 256 colours and fringes the edges. You can still export GIF or MP4 from it whenever you need one: the transparent master converts to any background, not the other way round.
One faceless figure, one material, one camera. The clips match each other and match the stills, because they come from the same pipeline.
Yes. The free RepDB preview bundle is a hand-picked sample from the paid library: every exercise in it comes with a full-quality looping animation for the male and female character, matching stills, and exercise data in English, German, Spanish and French. No signup, no watermark. It is licensed CC BY-NC 4.0 — fine for evaluation and non-commercial projects; a paid app or monetized content needs Standard.
Browse the free preview →Yes. Every clip is a seamless loop — the last frame runs straight back into the first — and the WebP file is set to repeat forever, so a plain <img> tag plays it continuously with no player or loop code. 544 of the 701 exercises have a loop; the rest are static holds such as planks, which ship as stills because there is nothing to repeat.
Yes. The catalog covers no-equipment moves — push-ups, bodyweight squats, burpees, jumping jacks, mountain climbers, glute bridges — plus dumbbell, kettlebell and resistance-band exercises for home setups. Every record carries an equipment field, so the app can filter to what a user owns. Standard ($499, one-time) includes the commercial license for a paid app, with no revenue cap.
Yes, within a strength-first catalog. Pilates mat exercises such as the roll-down, saw and spine twist, and flowing yoga moves like cat-cow and downward dog to upward dog, loop as animations. Held yoga poses — warrior, tree, downward dog — ship as stills, because a held pose has no movement to repeat. Check the full exercise list before you buy.
See every exercise in the catalog →Yes. Every clip is animated WebP with a real alpha channel, so the same file sits on a light or dark theme, a brand colour, a gradient or a card — no white box to hide, and nothing to re-export when the design changes. If your app only ever uses one background, composite it and export a smaller MP4 from the same master.
How transparent clips handle themes and dark mode →Looping WebP with a transparent background, 960px square, one file per animated exercise at images/animations/<slug>.webp. Modern browsers render it directly with an <img> tag. In native apps, decoding depends on the image component: our React Native example uses expo-image, while the Flutter example loads WebP from the app bundle. No video player is required.
Yes — the library ships transparent WebP, and you convert it to GIF or MP4 over any background you choose, instead of being stuck with one that was baked in. Note that FFmpeg cannot read these clips directly (it fails with "image data not found" on frames stored as blended sub-rectangles), so dump the frames with the libwebp anim_dump tool first, then encode the PNG sequence: overlay it on a colour source for MP4, or run it through palettegen/paletteuse for GIF. It is a build step you can run over the whole library, and the transparent WebP stays the source you regenerate from when the UI changes.
Copy the working FFmpeg recipe →Keep the transparent WebP as the theme-independent master. Use it directly when backgrounds or themes can change. If your app has one fixed background, composite that background and export an MP4: it is usually much smaller and gives you video controls. Regenerate it from the WebP whenever the UI changes.
See the measured comparison and FFmpeg recipe →All 544 exercises that involve movement. The other 157 are isometric holds or static poses — planks, hangs, and static stretches — so they intentionally ship as stills because there is no movement to animate. Each record carries an animation flag so you can branch on it in code instead of guessing.
In a measured 200-clip sample, white-background H.264 MP4s averaged about 175 KB at 960 × 960 and 71 KB at 512 × 512. White-background animated WebP averaged 1.12 MB and 545 KB, respectively. Exact sizes vary with clip length and motion. MP4 is smallest with a fixed background; use transparent WebP when you need alpha.
No. They are rendered 2D clips in a matte-clay style — they read as dimensional, but you are getting flat image files, not models or rigs. If you need something you can pose or re-render yourself, this is not that.
Yes, with Standard ($499, one-time) — the tier that includes the animations. It comes with a commercial license with no revenue cap for paid apps, and the Media Use Addendum for videos, Reels, Shorts, courses and posts published under your own brand. Stills has the full catalog as images, without animations.
The same animations from the publishing side — dropped over your own footage, exported to MP4, and what the license lets you post.
An exercise the library doesn’t have, your own equipment or another style: see the projects we animated to order.
RepDB, Vital Animations, GymVisual and MoveKit compared on transparent backgrounds, smooth motion and consistent characters.
Dark mode, custom brand palettes and gradients without re-exporting every exercise animation — why the transparent source is a product capability for themeable and white-label apps.
Why the transparent clip is the master you keep: composite any background and export MP4 at ~5% of the bytes, measured on these files, with a working FFmpeg recipe.
Still-first loading, click-to-play, one active clip — and the decode budget behind it: 90–108 ms per second of playback for a 960px clip.
Which asset belongs on which screen, from a 46 KB still to the 3.2 MB clip, with the derivative sizes to generate at build time.
Looping transparent animations plus the full exercise dataset — Standard, $499, one-time.
Add RepDB as a Preferred Source to find more of our exercise data in Google.