Getting started

Release status and compatibility

Raven is a working language and toolchain in preview. Releases include an SDK, project templates, a VS Code extension, and compiler libraries. Syntax and compiler APIs can still change between releases.

Install a release

Release 0.1.16 provides installers and release notes. Follow Install and run Raven for the first-run path.

Component Current release
SDK host Requires the .NET 11 SDK
Application targets .NET 11 and .NET 10, with the matching targeting packs
Editor VS Code extension distributed with the release
Libraries and projects NuGet packages, MSBuild SDKs, and project templates
Browser projects .NET 10 WebAssembly toolchain; requires wasm-tools

See Target platforms for platform-specific requirements. Supporting a target does not imply every .NET workload has the same level of validation.

Release documentation and upcoming changes

The page footer identifies the documentation build and source revision. Match examples to the compiler version you are using. The release notes describe published versions; the changelog on main also includes unreleased work.

These pages target Raven 0.1.16, including the SDK and browser playground. The build footer marks this version as unreleased until its release tag exists. Use the matching SDK when running the tour examples locally. Since 0.1.13, await operation? and try operation? propagate after the complete await or try expression. Use explicit operand parentheses to propagate inside it.

Raven 0.1.12 removed try?. Use (try expression)?, which composes exception capture with ordinary propagation. Each postfix ? propagates one carrier layer. The older spelling remains accepted by the 0.1.11 compiler.

Areas to evaluate separately

  • Component macros: Blazor component and markup macros remain experimental. See the component showcase for scope and examples.
  • Embedded targets: .NET nanoFramework has its own runtime and API surface. See embedded IoT before choosing a board or workload.
  • C# interoperability: Raven uses ordinary CLR types and metadata, but some source semantics intentionally differ. See Raven for C# developers and nullability.

Use the roadmap for development priorities and GitHub issues to report a reproducible compiler or tooling problem.