OpenQASM 3 Implementations

April 3, 2026 ยท View on GitHub

Listed here are publicly available tools that implement or support OpenQASM 3. Many projects are not yet listed here. The descriptions of projects that are listed may be incomplete. If you know of a software project that supports OpenQASM 3 but is not listed here, or if you have corrections, please open an issue.

Feature Comparison

  • function
    • parser -- typically means that semantic analysis is not supported.
    • front end -- some semantic analysis or compilation is done. Examples of semantic analysis are type checking and constant folding.
  • status
    • incomplete This sometimes means WIP and sometimes that not all of OQ3 is supported.
NameAPI languageimpl languagefunctionstatuslicense
Reference parserPythonPythonfront-endcompleteOSS
openqasm3_parserRustRustfront-endWIPOSS
QuasarJuliaJuliaparserWIPOSS
qasm3toolsCLIC++unknownunknownOSS
Amazon BraketPythonweb serviceincomplete
LabOne QPythonRust/PythonSDKincompleteOSS
Munich Quantum Toolkit (MQT)PythonC++import / exportOSS
QiskitPythonRust/PythonSDKincompleteOSS
js-quantumJavascriptJavascript/TSSDKcompleteOSS
FeynmanHaskellHaskellfront endunknownOSS
AutoQASMPythonPythoncircuit constructionincompleteOSS
OQpyPythonPythoncircuit constructioncompleteOSS
MATLAB Support Package for Quantum ComputingMATLABMATLABcircuit constructionunknownunknown

Reference parser

Meant to completely implement the OpenQASM 3 spec. It does no semantic analysis. It is relatively slow. It is based on ANTLR.

openqasm3_parser

Compiler front end for OpenQASM 3. Lexing, parsing, and semantic analysis.

Quasar

The Qu(antum) as(sembly) (lex/pars)er Compiler front end for OpenQASM 3. Lexing, parsing, and semantic analysis.

qasm3tools

Unknown

Amazon Braket

Cloud quantum computing service

LabOne Q

SDK and front end for performing experiments on the Zurich Instruments QCCS together with third party control hardware. github.

Munich Quantum Toolkit (MQT)

Qiskit

Quantum software development kit (SDK)

js-quantum

js-quantum is a self-contained TypeScript quantum SDK for building, simulating, and serializing quantum circuits, with real state-vector simulation and Born-rule measurement sampling. Its main advantages are a clean declarative API, zero native or WebAssembly dependencies, and broad runtime compatibility across browsers, Node.js, Deno, Bun, and Cloudflare Workers.

Feynman

Toolkit for quantum circuit analysis in the path integral model of quantum mechanics. The OpenQASM 3 frontend is here

AutoQASM

Although it is still a work in progress, the intent is that AutoQASM will support any quantum programming paradigm which falls into the OpenQASM 3.0 language scope. AutoQASM supports serializing quantum programs to OpenQASM, which allows the programs to interoperate with any library or service that supports OpenQASM programs, such as Amazon Braket.

AutoQASM is pure Python but includes dependencies with statically compiled extensions.

OQpy

The goal of oqpy ("ock-pie") is to make it easy to generate OpenQASM 3 + OpenPulse in Python.

Support is marked "complete" because OQpy depends on the reference parser.

MATLAB Support Package for Quantum Computing

Here is a function for exporting to OpenQASM 3. We don't know if it can import OpenQASM 3

OpenQASM 2 Implementations

circuit construction

compilation and synthesis

simulation