⚡ Quick Links
Learn ARO
Start here if you're new to the language
Getting Started
Build your first ARO application in 5 minutes. Learn the basics of features, feature sets, and contract-first development.
Start tutorial →The FDD Story
Discover the history of Feature-Driven Development—the forgotten methodology that inspired ARO.
Read the story →Language Tour
A comprehensive tour of ARO syntax, features, and capabilities. Everything you need to become proficient.
Take the tour →Core Concepts
Deep dives into ARO's architecture
The Basics
Understand the Action-Result-Object pattern, prepositions, and how ARO statements work.
Learn basics →Feature Sets
How to organize your code into feature sets and manage business capabilities.
Learn feature sets →Actions
The complete guide to ARO actions—Extract, Create, Validate, Store, Return, and more.
Explore actions →Application Lifecycle
Application-Start, Application-End, and how to manage your app's lifecycle.
Learn lifecycle →Powerful Features
What makes ARO remarkable
Event-Driven Architecture
Simple event dispatch between feature sets. Emit events by name, no subscriptions or complex pub/sub needed.
Learn events →State Transitions
Manage state machines with OpenAPI enums and a simple Accept action. Runtime validates all transitions.
Learn states →Data Pipelines
Filter, transform, and aggregate collections with map/reduce style operations. All results typed via OpenAPI.
Learn pipelines →Native Compilation
Compile ARO to LLVM IR and native binaries. Fast startup, lower memory, single binary deployment.
Learn compilation →Context-Aware Responses
Same code, different output. ARO automatically formats responses for CLI, API, or test contexts.
Learn formatting →Building APIs
Create powerful HTTP services with ARO
Contract-First Development
How OpenAPI contracts drive your ARO applications. Define your API first, then implement.
Learn contract-first →HTTP Client
Fetch data from external APIs with the Request action. GET, POST, PUT, DELETE and more.
Make HTTP requests →Sockets
Real-time communication with TCP sockets and bidirectional data flow.
Learn sockets →Reference
Detailed specifications and proposals
Language Proposals
29 evolution proposals documenting every aspect of the ARO language design.
Browse proposals →Creating Custom Actions
Extend ARO with your own actions. Learn the ActionImplementation protocol and registration.
Create actions →Events Guide
How to use events in ARO applications. Emit, handle, and compose event-driven systems.
Learn events →