Icestudio is a free, GPL-2.0-licensed visual editor that lets newcomers to FPGA design draw digital circuits as block diagrams and upload them directly to open-source FPGA boards on Linux, macOS or Windows.
What it is
Icestudio is a desktop design application written in JavaScript and released under GPL-2.0. Its stated purpose is to be a design tool focused on newcomers to the FPGA world, and it reduces the workflow to three steps: draw your circuit, upload it to your favourite open-source FPGA board, and you are done. The repository sits in the open-source FPGA ecosystem around the IceStorm toolchain and Lattice devices, and is tagged with the topics blocks, editor, fpga, icestorm, ide, javascript, lattice and verilog. Published builds cover Linux, MacOSX and Windows, and the project keeps both a stable and a work-in-progress version channel alongside a nightly build.
The concrete problem it addresses is the entry barrier in front of FPGA work: conventionally a designer writes hardware description text and drives a toolchain before anything reaches a board. Icestudio replaces the hand-authored starting point with a graphical block canvas, so a circuit is drawn rather than typed, and the same editor then pushes the result onto an open FPGA board. That draw-then-upload loop is the whole product argument, and the README demonstrates it with animated walkthroughs of a two-LED design from canvas to hardware.
Key capabilities
- A block-based drawing canvas for composing digital circuits, listed in the project topics as blocks and editor and demonstrated in the README as the first step of the workflow.
- Direct upload from the editor to an open-source FPGA board, the second step of the documented flow.
- An open-source Lattice FPGA focus, reflected in the icestorm, lattice, fpga and verilog topic tags rather than a proprietary vendor flow.
- Desktop builds for Linux, MacOSX and Windows.
- Stable and work-in-progress version channels, plus a nightly build published through the README badges.
- Example collections linked from the README: iceK with Alhambra II and iceBreaker board examples, IceMem, a four-digit SPI seven-segment display controller, a RISC-V CPU, a Z80 CPU and the Hack CPU from Nand2tetris.
- A translated interface spanning 18 languages, with English and Spanish complete, Ukrainian at 94 percent of strings, and a wiki guide for contributing translations.
Who uses it and how
- Newcomers to FPGA design, the audience the README names explicitly, who follow the draw, upload, done sequence instead of authoring HDL first.
- Students and self-learners working through Nand2tetris, for whom a Hack CPU implementation is linked as an example.
- Makers and hobbyists on open boards such as Alhambra II and iceBreaker, both represented in the iceK example repository.
- CPU-design and retro-computing experimenters, served by the Z80 and RISC-V example projects referenced in the README.
- Translators and code contributors, supported by the language progress table, a dedicated translating guide in the wiki and CONTRIBUTING.md for the codebase itself.
Getting started
Install a build for Linux, MacOSX or Windows from icestudio.io, with a nightly build available for testing. Full documentation, including the workflow and board support, is maintained in the project's GitHub wiki rather than in the README.
How it compares
The facts name no paid products, and Icestudio is best situated by the company it keeps: it is tagged icestorm, lattice and verilog, placing it in the same open-source toolchain family as the IceStorm flow and hand-written Verilog designs rather than in a proprietary vendor stack. No other visual block-based FPGA editor appears in the facts available here, so within this registry it stands alone as a graphical front end for open FPGA boards.
When to use it — and when not to
Choose it when the goal is graphical, low-ceremony entry to open Lattice FPGA boards and the IceStorm world is an acceptable dependency. Do not choose it if you need a vendor-proprietary device flow or prefer textual HDL as your primary medium. There is nothing to self-host, since it is a desktop application, but be aware that the README is thin and defers nearly all documentation to the wiki, that some linked technical write-ups are in Spanish only, and that the project carries 23 open issues.