# raea > raea is the Render Anything Engine: video, motion graphics, 3D scenes, games and apps written in TypeScript and React, rendered on the GPU by its own engine on your own computer. These docs are written for coding agents first. Every page below is plain Markdown. Install: `curl -fsSL https://raea.io/install | sh` (macOS on Apple Silicon, Linux x86_64; Windows: `irm https://raea.io/install.ps1 | iex`). Offline, `raea skill` and `raea guide` print the skill and craft guides for the installed version. - [raea docs](https://raea.io/docs/index.md): What raea is, and a map of every page in these docs, so an agent reading only this page knows where everything is. ## Start - [Install raea](https://raea.io/docs/start/install.md): Install raea on macOS, Linux or Windows, update it, pin a version, and know which files it puts where. - [Your first video](https://raea.io/docs/start/first-video.md): Write a composition in one TSX file, look at three of its frames, and render it to an MP4. - [Your first game](https://raea.io/docs/start/first-game.md): Write a small game as a pure step function, play it live with the keyboard, and render the same play-through every time. - [How an agent should use raea](https://raea.io/docs/start/agents.md): The order of work for a coding agent using raea: read the project, write, check, look, render, check again, hand over; and which steps run headless. ## Tutorials - [Tutorials](https://raea.io/docs/tutorials.md): Ten short narrated tutorials that walk through raea from the first download to publishing, controllers, the SDK, teams, storage and search. - [Get started with raea](https://raea.io/docs/tutorials/get-started.md): Download the raea app, sign in on raea.io, link your Mac, and land in your first project with your agent already at work. - [Connect your agent](https://raea.io/docs/tutorials/connect-your-agent.md): Bring the AI you already pay for over ACP, add agents to your workspace with their own instructions, and start work with the Director. - [A tour of the app](https://raea.io/docs/tutorials/tour.md): What each part of the raea app's sidebar is for: the workspace, New chat, the Inbox, Publish, Plugins, projects with their Feed, Compositions and Controllers, Chats and Settings. - [Review work and leave notes](https://raea.io/docs/tutorials/review-and-notes.md): Open what your agents made, pin a note to a moment and a place in the frame, send it to the agent, and get the next version back. - [Inspect compositions and components](https://raea.io/docs/tutorials/inspect.md): See what each piece is made of on a project's Compositions page, find what a component reaches, and pick any part of a picture by name. - [Controllers](https://raea.io/docs/tutorials/controllers.md): A project's settings, which every agent reads before it works: change a value in place, describe a new controller in plain words, and see how agents post a decision to the feed. - [Publish](https://raea.io/docs/tutorials/publish.md): Connect the accounts you post to, then post the approved cut to all of them at once from Publish, with each network's fields and checks. - [Extend raea with the SDK](https://raea.io/docs/tutorials/extend.md): Compositions and controllers are TypeScript on raea's SDK: write one, render it, post it to the feed with the feed's tools, or ask your agent to make new feed items and controllers for you. - [Work as a team](https://raea.io/docs/tutorials/teams.md): Start a team on raea.io, invite teammates by their GitHub login, review the same work together, and share one pool of storage. - [How storage and search work](https://raea.io/docs/tutorials/storage-and-search.md): Every project is a plain Git repository with its media stored the Git LFS way, by hash, in raea's storage; libraries make that media searchable by what's in it, with vector search. - [Build and install plugins](https://raea.io/docs/tutorials/plugins.md): Install a plugin anyone made from npm, a Git link or a folder, read what it asks for before it runs, then build your own: a tool on feed items, a panel beside the feed, or a new kind of item, reloading as you save. ## Concepts - [Compositions and frames](https://raea.io/docs/concepts/compositions.md): A composition is a function of the frame: what that means, the core APIs (Composition, Sequence, interpolate, spring), and the rules that keep every render the same. - [Rendering and checking](https://raea.io/docs/concepts/rendering.md): How to render stills, transparent frames and videos, set quality and bitrate, and check an export against the floor before anyone sees it. - [Workspaces and projects](https://raea.io/docs/concepts/workspaces.md): Where work lives in raea: a workspace is a git repository of projects and controllers, and each project has a brief and folders for media and renders. ## Guides - [Captions and cues on words](https://raea.io/docs/guides/words.md): Cut footage by what was said, cue any part on the moment a phrase is spoken with word(), and build captions from useWords() so they follow every re-cut. - [3D scenes](https://raea.io/docs/guides/3d.md): Write 3D in TSX with Bevy's names: a camera, lights, meshes and materials, moved by the frame, with 2D titles over them in the same composition. - [Apps on the web target or native](https://raea.io/docs/guides/apps.md): Write a desktop app as one React file, pick the web target (Blitz) or the native target (Rune), check it headless with scripted steps, and bundle it as a Mac app. - [Build and share plugins](https://raea.io/docs/guides/plugins.md): A plugin is an npm package with a raea key: components your compositions import, and tools, panels and item types in the raea app, each sandboxed with only the permissions and hosts the person approved. Build one in a folder, test it with hot reload, and share it on npm or Git. ## CLI - [CLI](https://raea.io/docs/reference/cli.md): Every raea verb: what it does, its forms, where it runs and each flag. - [raea render](https://raea.io/docs/reference/cli/render.md): Render a composition to an MP4, a PNG or a folder of frames, on the GPU and headless. - [raea play](https://raea.io/docs/reference/cli/play.md): Play a game live in a window, or headless with scripted keys, snapshots and a timing report. - [raea export-game](https://raea.io/docs/reference/cli/export-game.md): Package a game as a program of its own: a Mac app or a command-line program. - [raea bundle](https://raea.io/docs/reference/cli/bundle.md): Bundle a composition into one JavaScript file that render_bundle draws, on the Mac or the iPhone. - [raea app](https://raea.io/docs/reference/cli/app.md): Run, check headless and package a desktop app written as one TSX file on @raea/ui. - [raea run](https://raea.io/docs/reference/cli/run.md): Run a TypeScript program on the engine, headless, and print what it prints. - [raea init](https://raea.io/docs/reference/cli/init.md): Add a project's starting files where they're missing: edit.tsx, cuts.ts, components/ and AGENTS.md. - [raea workspace](https://raea.io/docs/reference/cli/workspace.md): Make, adopt or show a workspace: the git repository that holds a studio's projects and controllers. - [raea project](https://raea.io/docs/reference/cli/project.md): Make a project in the workspace, list them, or move one between inline and a repository of its own. - [raea controller](https://raea.io/docs/reference/cli/controller.md): Read and change the workspace's controllers: its settings and workflows, each a TypeScript file. - [raea spec](https://raea.io/docs/reference/cli/spec.md): Print a spec file's default export as JSON, checked against its schema: briefs, scripts, taste, plans and controllers. - [raea part](https://raea.io/docs/reference/cli/part.md): Copy a ready-made part into the project's components/, to use and change as your own. - [raea add](https://raea.io/docs/reference/cli/add.md): Add, remove and install npm packages for a project, with no Node or npm: raea.lock and node_modules. - [raea brand](https://raea.io/docs/reference/cli/brand.md): Read a brand kit from a website on this machine: colours, fonts and logos into brand/ and BRAND.md. - [raea library](https://raea.io/docs/reference/cli/library.md): Search and manage the person's media libraries in the raea app: folders and drives indexed on this machine, searched by meaning. - [raea check](https://raea.io/docs/reference/cli/check.md): Check a composition's text in a second, or an export against the floor: text, contrast, safe areas, freezes, flashing, cues and loudness. - [raea judge](https://raea.io/docs/reference/cli/judge.md): Judge a 3D scene's review sheets blind, by a model on a frozen rubric or a fresh agent session, with the pass decided in code. - [raea scene](https://raea.io/docs/reference/cli/scene.md): Find floating, sunk and clipping 3D parts, say what each part rests on, and meter a shot's light. - [raea solid](https://raea.io/docs/reference/cli/solid.md): Measure, view and export a solid: parts built from code with exact volumes, joints and parameters. - [raea next](https://raea.io/docs/reference/cli/next.md): The two or three most useful next steps for a project, read from its brief, compositions, renders and checks. - [raea doctor](https://raea.io/docs/reference/cli/doctor.md): Find what doesn't match this version of raea: old brief files, an older workspace format, an agent's stale skill. - [raea hook](https://raea.io/docs/reference/cli/hook.md): Claude Code's PostToolUse hook: the quick text check after an agent saves a composition. - [raea traces](https://raea.io/docs/reference/cli/traces.md): List the sessions raea apps left, newest first, with how each ended and its glitches, or tell one in full. - [raea media](https://raea.io/docs/reference/cli/media.md): Probe, cut, measure and encode media natively, the same on the Mac and the iPhone, with no ffmpeg. - [raea cut](https://raea.io/docs/reference/cli/cut.md): Cut a take to the lines it says, transcribing it first, and write cuts.ts and words.json. - [raea frame](https://raea.io/docs/reference/cli/frame.md): Say how a take fits the edit: a talking take for , a screen recording for , from where its face is. - [raea track](https://raea.io/docs/reference/cli/track.md): Solve a clip's camera on this machine, so 3D can stand in its world with . - [raea splat](https://raea.io/docs/reference/cli/splat.md): Train footage of a real place or thing into a 3D Gaussian splat for , on this Mac's GPU. - [raea mezz](https://raea.io/docs/reference/cli/mezz.md): Make an intra-only ProRes copy of each long-GOP source over 1080p, so scrubbing it is smooth. - [raea neural](https://raea.io/docs/reference/cli/neural.md): Run DLSS 5 neural rendering over a render's frames on the Mac, through your own MLX-DLSS build and weights. - [raea song](https://raea.io/docs/reference/cli/song.md): Read a song's energy map: beats, bars, sections, builds, drops, stops, hits and cuts per bar. - [raea sounds](https://raea.io/docs/reference/cli/sounds.md): Search open sample libraries for instruments and drums, and fetch one for a Sampler. - [raea sao](https://raea.io/docs/reference/cli/sao.md): Make a sound effect from a description with Stable Audio Open, on this machine. - [raea tokensynth](https://raea.io/docs/reference/cli/tokensynth.md): Make an instrument's notes from a description of its timbre with TokenSynth, on this machine. - [raea setup-audio](https://raea.io/docs/reference/cli/setup-audio.md): Install or check the local audio models: Stable Audio Open for foley and TokenSynth for instruments. - [raea gen](https://raea.io/docs/reference/cli/gen.md): Generate images, video, music, sound, speech, 3D models and text through made.app, fal, Replicate, OpenRouter, Modal or ComfyUI. - [raea physics](https://raea.io/docs/reference/cli/physics.md): Make the bakes and play: rigid bodies, soft goo, and parts cut out of a .glb. - [raea blender](https://raea.io/docs/reference/cli/blender.md): Run a Blender Python script headless, with raea's library of mesh scripts: convert, decimate, repair, split, bake, rig, cloth. - [raea guide](https://raea.io/docs/reference/cli/guide.md): Print raea's craft guides: the floor read before any edit, the modes, the notes and the 3D guides. - [raea context](https://raea.io/docs/reference/cli/context.md): Print what to read before working on a project: its taste, brief and look, the floor and its modes' guides. - [raea skill](https://raea.io/docs/reference/cli/skill.md): Print the agent skill this raea ships, matched to its version, or one of its references. - [raea skills](https://raea.io/docs/reference/cli/skills.md): Install raea's agent skill where Claude Code, Codex, Kimi or Gemini read skills, with its MCP server and hook. - [raea setup](https://raea.io/docs/reference/cli/setup.md): Find Blender, or download its current LTS, and install its MCP add-on. ## SDK - [SDK](https://raea.io/docs/reference/sdk.md): Every raea import path: what it is for, and each component, hook, function, class and type it exports. - [raea](https://raea.io/docs/reference/sdk/raea.md): The main entry: compositions, sequences, time, interpolation, springs, footage, sound and words. - [raea/app](https://raea.io/docs/reference/sdk/app.md): The App, its plugins and schedules, and the registry a video's compositions are kept in. - [raea/brief](https://raea.io/docs/reference/sdk/brief.md): The specs an agent writes as data: brief, script, taste, plan and controller, checked against raea's schemas. - [raea/time](https://raea.io/docs/reference/sdk/time.md): The frame being drawn and the composition's time: useCurrentFrame, useVideoConfig and the Clock. - [raea/animation](https://raea.io/docs/reference/sdk/animation.md): Declared animation: named moves, staggers, sequences and timelines, and a model's own clips. - [raea/math](https://raea.io/docs/reference/sdk/math.md): Numbers through time: interpolation, easing, springs, curves and the vector types Bevy uses. - [raea/state](https://raea.io/docs/reference/sdk/state.md): State machines stepped by frame, for game logic and workflows, typed so a wrong transition doesn't compile. - [raea/input](https://raea.io/docs/reference/sdk/input.md): The frame's input: keys, pointer, wheel and gamepads, the same live and in a scripted render. - [raea/video](https://raea.io/docs/reference/sdk/video.md): Footage and time-shifted sequences: Video, Sequence, Series, Loop and Freeze. - [raea/audio](https://raea.io/docs/reference/sdk/audio.md): Sound: Audio, the master Mix, speech, sound in 3D space, and a song's energy map. - [raea/text](https://raea.io/docs/reference/sdk/text.md): Text in the 3D world, fonts, and time anchored to the words said. - [raea/image](https://raea.io/docs/reference/sdk/image.md): Pictures on the page and in the world, and texture atlases packed from them. - [raea/asset](https://raea.io/docs/reference/sdk/asset.md): Files the project holds and assets made for it: staticFile, generated sound and music, and glTF bytes. - [raea/color](https://raea.io/docs/reference/sdk/color.md): Bevy's colour types: Srgba, LinearRgba, Hsla, Oklab, Oklch and the rest, with their conversions. - [raea/3d](https://raea.io/docs/reference/sdk/3d.md): raea's scene layer: models, physics, splats, matchmoves, instancing, custom shader passes and 3D text. - [raea/camera](https://raea.io/docs/reference/sdk/camera.md): Cameras and the views they make: Camera3d, the Canvas3D a 2D scene draws in, HDR and matchmoved cameras. - [raea/light](https://raea.io/docs/reference/sdk/light.md): Bevy's lights in Bevy's units, environments, skies and daylight. - [raea/pbr](https://raea.io/docs/reference/sdk/pbr.md): Materials and volumes: StandardMaterial, extended and toon materials, custom shaders, decals, fog and fire. - [raea/mesh](https://raea.io/docs/reference/sdk/mesh.md): Shapes and solids: Mesh3d and Mesh2d, Bevy's primitives, buffer meshes, instancing and exact solids. - [raea/transform](https://raea.io/docs/reference/sdk/transform.md): Where things are: Bevy's Transform and Quat, and nesting. - [raea/post_process](https://raea.io/docs/reference/sdk/post_process.md): What's done to the frame after it's drawn: tone mapping, bloom, depth of field, motion blur, grading and outlines. - [raea/picking](https://raea.io/docs/reference/sdk/picking.md): What the pointer is over: the nearest part under it, and the ray it casts. - [raea/gizmos](https://raea.io/docs/reference/sdk/gizmos.md): Lines drawn for looking: Bevy's gizmos and debug overlays. - [raea/sprite](https://raea.io/docs/reference/sdk/sprite.md): 2D pictures and flat shapes, drawn by Bevy's 2D renderer inside a Canvas3D. - [raea/ui](https://raea.io/docs/reference/sdk/ui.md): bevy_ui: Node and its layout fields, Text, images, scrolling, gradients and units. - [raea/feathers](https://raea.io/docs/reference/sdk/feathers.md): Bevy's feathers widgets: buttons, sliders, checkboxes, menus, inputs and colour pickers, in its dark theme. - [raea/dev_tools](https://raea.io/docs/reference/sdk/dev_tools.md): Checks and lints you can run from code: a motion performance's lint report. - [raea/remote](https://raea.io/docs/reference/sdk/remote.md): A headless Bevy App you open, step and query from TypeScript, through Bevy's remote protocol. ## Reference - [Files and specs](https://raea.io/docs/reference/files.md): A workspace's and a project's files, what lives in ~/.raea, and every field of each spec file. - [Settings](https://raea.io/docs/reference/settings.md): Every setting raea reads from the environment or ~/.raea/env, grouped by what it's for. ## What's new - [What's new](https://raea.io/docs/whats-new.md): Every raea release, newest first: what changed, how to update, and what is known to be missing. - [raea 0.1.0-canary.3](https://raea.io/docs/whats-new/0.1.0-canary.3.md): The third canary of the raea engine: the `raea` CLI that renders, plays and checks compositions, games and apps written in React and TypeScript, with the SDK, the runtime and the agent skills beside it. - [raea 0.1.0-canary.2](https://raea.io/docs/whats-new/0.1.0-canary.2.md): The second canary of the raea engine: the `raea` CLI that renders, plays and checks compositions and games written in React and TypeScript, with the SDK, the runtime and the agent skills beside it. - [raea 0.1.0-canary.1](https://raea.io/docs/whats-new/0.1.0-canary.1.md): The first build of the raea engine you can install: `raea-motion`, the CLI that renders, plays and checks compositions written in React and TypeScript (`@raea/motion`), with the SDK, the lite runtime and the agent skills beside it. Everything in one file: https://raea.io/llms-full.txt