User guide
Documentation
Practical guides for learning and using Aura. Design decisions and contracts live in the RFC catalog. Use search in the sidebar to jump by keyword.
Start
Language
- Language tourMap of the language surface — start here, then dive into each topic.
- Types & nullabilityScalars, non-null by default, T?, flow narrowing, and force-unwrap.
- Classes, structs & interfacesReference classes, value structs, interfaces, and monomorphized generics.
- Control flow & errorsif/while/for, match on enums, Result, and throw/try/catch.
- Async, tasks & borrowingBounded async functions, task handles, channels, cancellation, and ref values.
- ArraysArray<T> construction, len/get/set, push/pop, and for-in iteration.
- Attributes & derivesSupported declaration attributes, test metadata, derives, and FFI annotations.
- Syntax cheatsheetCompact lookup for keywords, types, and common forms.
Toolchain
- CLIaura new, init, check, build, run, test, fmt, race, update, and language-server.
- Packagesaura.toml, multi-file packages, imports, and path dependencies.
- Standard libraryIn-tree std packages, public API contracts, and prelude resolution.
- TestingRun, filter, race-check, and report @test functions with aura test.