Everything the compiler knows.
Start with the install, then read the language pages in order. Look up one keyword, std type, error, or lint in the reference. The reference pages carry the same text the editor shows on hover, generated from the compiler's own table.
Introduction
Alloy is a strict superset of Luau. Every Luau file is already an Alloy file. A file that uses no Alloy feature compiles to itself, byte for byte. Each Alloy construct compiles to fixed Luau on the same line. A stack trace, a breakpoint, and an analyzer diagnostic all point at the line you wrote.
The compiler never looks at a type. Luau's own checker types the emitted code through luau-lsp. The language server maps its answers back onto the Alloy source. The compiler holds the contracts the checker cannot see: exhaustive matches, complete struct construction, implemented traits, sealed structs, and data-only remotes.
The design rule is short. A feature earns its place when it removes a pattern that Roblox code writes by hand, has one fixed emit, and adds no line. alloy doc prints any page of these docs on the terminal.
Getting started
Install the toolchain, make a first project, and set up the editor.
Language
Each construct beside the Luau it emits, and the rules the compiler holds.
Tooling
The commands: init, build, check, flux, lint, fmt, test, doc, mcp, migrate, self, and ingot.
Configuration
alloy.toml, the Luau configuration, mounts, and the directives of one file.
Reference
Every keyword, operator, intrinsic, attribute, derive, std type, error kind, and lint.
Guides
Articles on one subject each.
