Quick start¶
This guide walks you through installing FABulous, generating a fabric, and producing a bitstream in under five minutes. For detailed installation options see the Installation section.
1. Install FABulous¶
Install uv (if you don’t have it already), then install FABulous as a tool:
# Install uv (Linux/macOS)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Install FABulous
uv tool install fabulous-fpga
If you already have pipx installed, pipx install fabulous-fpga works as well.
Verify the installation:
FABulous --version
Tip
See the Installation section for alternative methods (venv, Docker, Nix) and platform-specific instructions.
2. Install CAD tools¶
FABulous requires Yosys and nextpnr-generic for synthesis and place-and-route. The easiest way to install them is through the bundled installer:
FABulous install-oss-cad-suite
This installs the OSS CAD Suite, which includes Yosys, nextpnr, simulators, and all other required tools. VHDL users will also get ghdl and the ghdl-yosys-plugin through this installer. For manual installation or more details, see CAD tool installation.
3. Create a project¶
FABulous create-project demo
This creates a demo/ directory with a default fabric definition and example user designs.
4. Generate fabric and bitstream¶
You can run the full flow either interactively or as a one-liner.
Option A – Interactive shell:
cd demo
FABulous start
Inside the FABulous shell:
fabulous> run_FABulous_fabric
fabulous> run_FABulous_bitstream user_design/sequential_16bit_en.v
Option B – Command line (batch mode):
FABulous -p demo run "run_FABulous_fabric; run_FABulous_bitstream user_design/sequential_16bit_en.v"
5. Check the outputs¶
After a successful run:
Tile RTL files are in
demo/Tile/Fabric RTL file is in
demo/Fabric/Bitstream is at
demo/user_design/sequential_16bit_en.binSynthesis and PnR logs are in
demo/user_design/
What’s next?¶
Building fabric – step-by-step fabric generation and customization
Fabric definition – how to define your own fabric architecture
Simulation – verify your generated fabric through simulation
Development setup – set up a development environment to contribute