# Native Player
Compile the dotLottie runtime for your target architecture and play Lottie animations from C or C++, with guides for rendering, theming, and events.

The native runtime exposes `dotlottie-rs` as a plain C library. It ships as source rather than as a prebuilt package, so the first step is always to compile it for the architectures you target and generate the `dotlottie_player.h` header that describes the API.

Everything the Android, iOS, Flutter, and React Native players can do is available here: loading `.lottie` and Lottie JSON files, playback control, software and GPU render targets, theming, slots, and interactive state machines.

New to the runtime? Work through the tutorials in order — each one depends on the previous. Already building? Jump to the guides or the reference.

<Grid columns="2">
  <Feature title="Prerequisites" icon="PiWrench" href="/en/runtimes/distributions/native/v0.x/prerequisites">
    Install the Rust, C++, and platform toolchains the build needs.
  </Feature>

  <Feature title="Build for your architecture" icon="PiCpu" href="/en/runtimes/distributions/native/v0.x/building">
    Compile the library and generate the C header for Android, Apple, Linux, or Windows.
  </Feature>

  <Feature title="Link into your project" icon="PiPuzzlePiece" href="/en/runtimes/distributions/native/v0.x/linking">
    Wire the header and library into a Makefile, CMake project, or Xcode target.
  </Feature>

  <Feature title="Render your first animation" icon="PiPlay" href="/en/runtimes/distributions/native/v0.x/first-animation">
    A complete C program that loads an animation and renders it to a pixel buffer.
  </Feature>

  <Feature title="How the C API works" icon="PiBookOpen" href="/en/runtimes/distributions/native/v0.x/how-the-c-api-works">
    The handle model, error results, ownership rules, and feature gating.
  </Feature>

  <Feature title="State Machines" icon="PiCursorClick" href="/en/runtimes/distributions/native/v0.x/state-machines">
    Drive interactive animations with inputs, pointer events, and transitions.
  </Feature>

  <Feature title="Memory and safety" icon="PiShieldCheck" href="/en/runtimes/distributions/native/v0.x/memory-and-safety">
    Ownership rules, destruction order, string lifetimes, and thread safety.
  </Feature>

  <Feature title="C API reference" icon="PiCode" href="/en/runtimes/distributions/native/v0.x/api-reference">
    Every function, enum, and struct in `dotlottie_player.h`.
  </Feature>
</Grid>
