Each pin, bus, and part is a TypeScript object. The HAL checks you're using them the right way — mistakes show up in your editor, not on the board.
You write TypeScript and get the C++ you'd have written by hand — nothing extra slowing it down.
Write tests in TypeScript. The test runner sends them to the board, runs them there, and reports pass or fail back to your terminal — one command.
Spots problems the C++ compiler cannot: a delay that freezes your screen, two parts fighting over one pin, a program bigger than the board.
Firmware with a type system
Boards, pins, and peripherals become typed objects that catch mistakes before the code ever
leaves your machine.
Browse the HAL reference → Browse examples → We use it on our own boards. If a doc needs work or something doesn't behave, open an issue — we'd rather hear about it.