Quickstart

Create a project

forge new my-board --rust

This creates a Rust Forge project with Forge.toml, a Cargo manifest, and src/main.rs.

Describe hardware

In src/main.rs, describe a design with the SDK: add components, connect them with typed endpoints, and call design.finish().

let clock_pin = design.add(Pin { name: "clock-pin", pin_type: PinType::Input, physical: "35", .. })?;
let timer = design.add(Timer { name: "blink", clock, period: 1.seconds()?, mode: TimerMode::Toggle })?;

Check, verify, build

forge check   — structural and project validation
forge verify   — lower the design to validated FIR
forge build    — compile verified FIR to a target bitstream

With a target configured, forge build produces a real bitstream without attached hardware.