Site Map
This page is a crawl-friendly HTML index of the canonical LERP surface.
Primary XML sitemap: sitemap.xml
Home
- Welcome to LERP - Luau Education for Rive Professionals - From zero to hero
Core Pages
- About the Author - Author credentials and background for the LERP course
- Contact & Transparency - Contact paths and transparency details for LERP maintenance
- Contribution Instructions - Step-by-step instructions for contributing to LERP
- Contribution Policy - Quality and governance policy for contributing to LERP
- Corrections Policy - How LERP handles errors, clarifications, and content corrections
- Editorial Methodology - How LERP content is authored, reviewed, and updated
- LERP Course Changelog and Runtime Compatibility Updates - Versioned changes to the free LERP Rive Luau course, including runtime compatibility baselines, corrected APIs and lesson updates.
- My Progress - Track your course progress and manage exercise completion
- Open Source License (MIT) - LERP is open source under the MIT License
- Privacy (localStorage) - How LERP stores progress locally and what data is (and is not) collected.
- Quick Reference - Look up Rive Luau syntax, script protocols, core types, and common patterns. Includes links to the API and runtime compatibility baseline.
- Release & Deployment Workflow - Canonical workflow for drafting, reviewing, releasing, deploying, and verifying LERP.
- Rive & Luau Scripting Glossary - Key terms and definitions for Rive scripting with Luau
- Tips and Tricks - Common workarounds, patterns, and solutions for Rive Luau scripting problems
Advanced
- Advanced Rive Drawing Core Types - Understanding Path, Paint, and other core drawing types in Rive
- Drawing API - Transforms, Renderer state, and advanced drawing techniques in Rive
- Dynamic Instantiation - Create and manage Rive artboard instances with Luau. Practice reusable components, runtime spawning, and collections of interactive objects.
- GPU Shaders and 3D Rendering - Early-access GPU shader workflows, GPUCanvas rendering, WGSL assets, and 3D-style rendering patterns in Rive
- Procedural Geometry - Dynamic Path generation, animated shapes, and particle systems in Rive
- Rive Pointer Events — Hit Testing and Interactive Buttons - Learn pointer events in Rive Luau with exercises for interactive buttons, hit testing, and gesture-driven interfaces.
- ViewModels - Binding scripts to ViewModels for reactive data-driven animations
Api
- API Reference - Complete Rive Luau API documentation organized by category.
- Assets - Image, Blob, AudioSource, AudioSound, sampling, and Early Access GPU texture-view boundaries
- Data & Input - Input, Property, Context, and ViewModel for data binding
- Data Values - Rive Luau API reference for typed DataValue containers and ViewModel properties, including numeric, string, boolean, and color values.
- Drawing - Path, Paint, Gradient, and Renderer for custom drawing
- Events - Current Editor event types, ListenerContext payloads, and Node gamepad callbacks
- File Formats - FileFormat and TextFileFormat editor protocols, document intelligence, previews, and export-to-Blob behavior
- GPU Shaders - GPUCanvas, Shader, GPUPipeline, GPUBuffer, GPUTexture, GPUSampler, bind groups, and shader descriptor types
- Hierarchy - Rive Luau reference for node data, hierarchy access, transforms, and layout scripting, with compatibility notes and code examples.
- Path Effects - PathCommand, PathData, PathEffect, and CommandType
- Rive Core Types API Reference - Rive Luau API reference for Vector, Color, Mat2D, and Mat4: positions, colors, transforms, constructors, properties, and operations.
- Rive Interpolator API — Luau callbacks - Rive Luau Interpolator callback signatures, factor remapping, value blending and source-backed runtime fallback behavior.
- Scene - Rive Luau scene API reference for artboards, nodes, and animations: properties, rendering, advancement, and independent instances.
- Styling - PaintDefinition, PaintStyle, BlendMode, StrokeCap, StrokeJoin, GradientStop
- System - Listener, EnumValues, Audio globals, and sandbox/runtime compatibility notes
Best Practices
Examples
- Sample Exercise (Review) - A complete exercise example demonstrating all features
Fundamentals
- 1.2 Control Flow & Loops - Conditionals, loops, and control structures in Rive Node Scripts
- 1.3 Functions & Closures - Define functions, understand scope, and use closures in Rive Node Scripts
- 1.4 Tables - Arrays, dictionaries, and data structures in Rive Node Scripts
- Data Types - Understanding Luau's fundamental data types for Rive animations
- Iteration - Loops, iterators, and collection traversal in Rive Node Scripts
- Luau Variables, Types & Operators for Rive - Learn local variables, basic Luau types, operators and script-instance data in Rive Node scripts, with quizzes and coding exercises.
- Operators - Arithmetic, comparison, logical, and compound operators in Rive Node Scripts
Getting Started
- How Rive Scripts Work - Understand Rive Luau script structure, factory functions, self and lifecycle callbacks, with comparisons to JavaScript and After Effects expressions.
- Welcome to Rive Scripting - Introduction to Rive scripting and what it enables
- Why Luau? - Understand why Rive uses Luau and how its performance, safety, gradual typing, and Lua foundations fit interactive animation.
- Your First Rive Script - Write your first Rive Luau Node script, attach it to an artboard, and understand types, inputs and callbacks through beginner exercises.
Oop
- 3.2 Building Classes - Create proper class constructors with typing and methods
- 3.3 Inheritance & Patterns - Learn inheritance in Luau using metatables, parent methods, intersection types, and drawable-object examples for Rive scripting.
- 3.7 Encapsulation - Private state patterns and closures for encapsulation in Rive
- 3.8 OOP Patterns - Common OOP patterns for Rive - Factory, Prototype, Module, and more
- Metatables & __index - Understand metatables and the __index metamethod - the foundation of OOP in Luau
- Prototype-Based OOP - Understanding Lua's prototype-based approach to object-oriented programming
- self and Methods - The colon syntax, self parameter, and method calls in Lua
- The __index Metamethod - Deep dive into __index, __newindex, and method lookup chains
Projects
- Catch the Stars - Build a tiny interactive game with clicking stars and score tracking
- Data Visualization - Build a Rive bar chart driven by ViewModel data in this LERP project, with a Luau script and step-by-step setup.
- GPU Shader Example Labs - Guided labs for the Rive GPU shader example pack, from first GPUCanvas triangle to post-processing, depth, ray marching, and glass distortion
- Interactive Button - Build a button that reacts to pointer Input and fires ViewModel triggers
Rive
- Converter Script Protocol - Bidirectional data transformation for ViewModel bindings
- Custom Easing in Rive — Interpolator - Work through quadratic easing in Rive Luau with Interpolator. Learn factor remapping, value blending, fallback behavior and runtime compatibility.
- Inputs and Data Binding - Learn how to use script inputs and data binding in Rive Node Scripts
- Layout Script Protocol - Programmatic control over Layout component sizing and positioning
- Listeners - Learn about Listener functions in Rive - property listeners, pointer events, and cross-script communication
- Node Lifecycle - Understand when each Node script callback runs in Rive
- Node Protocol - Learn the Node script protocol structure required for Rive animations
- Path Effect Script Protocol - Real-time manipulation of path geometry for stroke and fill effects
- Rive AI Agent - Comprehensive guide to the Rive AI Coding Agent built into the editor
- Rive Environment - Understand the Rive scripting environment, Console panel, script types, and sandbox limitations
- Rive ListenerAction Protocol — State Machine Scripts - Run Luau code from Rive state machine listeners. Learn ListenerAction setup, its performAction callback, and how it differs from property listeners.
- Rive Script Errata - Living tracker of Rive scripting documentation corrections discovered during editor validation
- Rive Script Types — Choose a Luau Protocol - Compare Rive Node, Layout, Converter, Path Effect and state machine scripts. Choose the right Luau protocol and follow its lesson and example.
- Runtime Compatibility Baseline - Versioned baseline separating released runtime, public docs, editor rollout, and later-source evidence
- Script Capability Matrix - Comprehensive matrix of what each Rive script type can access, what parameters it receives, and what it cannot do
- Test Script Protocol - Write and organize Rive Luau test scripts with cases, groups, expect matchers, and fixtures, then interpret results in the editor.
- TransitionCondition Script Protocol - Learn the Rive TransitionCondition script protocol for custom state-machine transition logic, with lifecycle methods and examples.
- Util Script Protocol - Learn how to create reusable Util scripts for sharing code across Node scripts in Rive
Types
- 2.1 Type Annotations & Inference - Understand strict mode, add type annotations, and understand type inference
- 2.2 Custom Types & Unions - Define custom type aliases, table types, and union types
- 2.3 Generics & Advanced Types - Create flexible, reusable type definitions with generics
- Advanced Types - Master intersection types, union types, optional types, and function types in Luau
- Strict Mode Deep Dive - Master strict mode and understand the type errors it catches
- The late() Initializer - Understand when and how to use late() for engine-provided and deferred values
- Type Annotations Deep Dive - Master type annotations for Rive Node Scripts with practical patterns