# Quantum full-stack libraries
# Braket
Amazon’s fully managed quantum computing service for building quantum algorithms.
# Cirq
Framework for creating, editing, and invoking Noisy Intermediate Scale Quantum (NISQ) circuits.
# Forest
Rigetti’s software library for writing, simulating, compiling and executing quantum programs.
# Ocean
D-Wave System’s suite of tools for solving hard problems with quantum computers.
# OpenQL
Compiler framework with algorithm libraries, optimizer, scheduler, QEC, mapping, micro-code generator.
# ProjectQ
Hardware-agnostic framework with compiler and simulator with emulation capabilities.
# Q#
Microsoft’s quantum programming language with Visual Studio integration.
# Qiskit
Framework for noisy quantum computers at the level of pulses, circuits, and algorithms (supported by IBM).
# Silq
Silq is a high-level quantum programming language with safe uncomputation and intuitive semantics.
# Strawberry Fields
Xanadu’s software library for photonic quantum computing.
# Tequila
An Extensible Quantum Information and Learning Architecture developed by Alan Aspuru-Guzik’s group (UofT).
# XACC
Extreme-scale programming model for quantum acceleration within high-performance computing.
# staq
Full stack quantum processing toolkit.
# Quantum simulators
# BLACK-STONE
Specification and implementation of quantum common lisp, for gate-model quantum computers.
# Cliffords.jl
Efficient calculation of Clifford circuits in Julia.
# Intel Quantum Simulator
Distributed qubit register quantum simulator using OpenMP and MPI.
# JKQ-DDSIM
Error-free quantum simulator using decision diagrams as underlying data structure. (arXiv / IEEE)
# Liqui|>
Toolsuite for quantum simulation developed by Microsoft QuArC.
# PauliPropagation.jl
Pauli propagation simulation of quantum circuits in the Heisenberg picture.
# PIQS
Efficient simulation of open quantum dynamics of identical qubits.
# QCGPU
High-performance GPU-accelerated quantum computer simulation outlined in this arXiv paper.
# QCL
High level, hardware-agnostic programming language for quantum computers (syntax like C or Pascal).
# QCircuits
User-friendly quantum circuit simulator designed for students and newcomers to quantum computing.
# QOCS
Quantum OCaml Circuit Simulator is a functional approach to simulating quantum gates.
# QSimulator.jl
Unitary and Lindbladian evolution in Julia.
# QTop
Simulation and visualization of topological quantum computers.
# QVM
Rigetti’s high-performance quantum virtual machine.
# QWIRE
A quantum circuit language and formal verification tool described in this paper.
# Qibo
Framework for quantum simulation with hardware acceleration, including multi-GPU support.
# Qiskit Aer
High performance simulator for quantum circuits that includes noise models (supported by IBM).
# Qlmp
Interpreter for the functional quantum programming language Qumin.
# Qrack
Comprehensive qubit and gate implementation for developing universal virtual quantum processors.
# QuEST
Quantum Exact Simulation Toolkit is a high performance multicore simulator of universal quantum circuits.
# QuNetSim
A quantum network simulation framework.
# QuPy
Quantum circuit simulator for both CPU and GPU.
# QuSim
Ideal noise-free multi-qubit simulator written in 150 lines of code.
# QuSpin
Exact diagonalization and dynamics of arbitrary boson, fermion and spin many-body systems.
# QuTiP
User-friendly and efficient numerical simulations of a wide variety of open quantum systems.
# QuaC
Parallel time-dependent open quantum systems solver.
# Quantum Circuit Simulator
Smoothly runs 20+ qubit simulations in browser or on node.js server.
# Quantum JavaScript (Q.js)
Drag-and-drop circuit editor, simulator, documented API, text-as-circuit DSL, concept primers.
# Quantum Virtual Machine
Reference implementation of Rigetti’s Quantum Virtual Machine.
# Quantum++
High-performance general purpose quantum simulator (can simulate d-dimensional qudits).
# QuantumInfo.jl
Julia library for quantum information related calculations.
# QuantumUtils
Tools for quantum control, simulation, channel representation conversion, and perturbations.
# Quintuple
Simulating the 5-qubit processor of the IBM Quantum Experience.
# Quipper
Scalable functional programming language for quantum computing based on Quantum Lambda Calculus.
# Quirk
Drag-and-drop quantum circuit simulator in your browser.
# RandomQuantum.jl
Package for generating random quantum states and processes.
# SQUANCH
A distributed simulation framework for quantum networks and channels.
# SeQuencing
Construct and simulate realistic quantum control sequences using QuTiP.
# SimulaQron
Application level simulator of a quantum network.
# SwiftQuantumComputing
Quantum circuit simulator with a bit of genetic programming.
# TNQVM
Tensor Network QPU Simulator for Eclipse XACC.
# Yao.jl
Extensible, Efficient Quantum Algorithm Design for Humans.
# jquil
A Java library for quantum programming using Quil.
# jsquil
JavaScript interface for writing Quil programs.
# libQuantumJava
Crude translation from the C implementation of libquantum
to a Java version.
# qSim
High level, elementary simulation library.
# Quantum annealing
# C-to-D-Wave
Compile a very small subset of C to a D-Wave Hamiltonian function
# QA Prolog
Compile a subset of Prolog to a D-Wave Hamiltonian function
# QMASM
Quantum macro assembler for D-Wave systems
# Qbsolv
QUBO solver with D-Wave or classical tabu solver backend.
# Virtual Hardware Embedding
Virtual Hardware Embedding Suite for adiabatic quantum computing.
# chimera_embedding
Algorithms to generate native-structured embeddings for Chimera graphs.
# dimod
Shared API for Ising and QUBO problems.
# dwave-cloud-client
Min. implementation of the REST interface to communicate with D-Wave’s Solver API.
# dwave-system
API for easily incorporating D-Wave quantum annealers as samplers in the Ocean software stack.
# dwave_neal
An implementation of a simulated annealing sampler.
# dwave_networkx
Exploration and analysis of network graphs.
# dwavebinarycsp
Map constraint satisfaction problems with binary variables to binary quadratic models.
# edif2qmasm
Compile Verilog, VHDL, and other hardware-description languages to a D-Wave Hamiltonian function
# embedding_utilities
Mapping samples between original and embedded graph.
# micro_client_sapi_dimod
Dimod wrapper for the D-Wave Micro Client.
# minorminer
Heuristic tool for minor graph embedding.
# penaltymodel
Utilities and interfaces for using penalty models.
# sapi_dimod
Dimod wrapper for D-Wave’s Solver API (SAPI).
# Quantum algorithms
# Adapt
Algorithms for adaptive refinement of measurements.
# Arline Quantum
Library with implementation of quantum gates and hardware, a part of Arline Benchmarks project.
# FermiLib
Software for analyzing fermionic quantum simulation algorithms with ProjectQ.
# Grove
Quantum algorithms implemented using Rigetti’s pyQuil.
# OpenFermion
Compiling and analyzing quantum algorithm for quantum chemistry simulations.
# PennyLane
Library for quantum ML, automatic differentiation and optimization of hybrid computations.
# QFog
Framework for analyzing both classical and quantum Bayesian Networks.
# Qiskit Nature
Qiskit component for chemistry and physics problems including ground state energy computations, excited states and dipole moments of molecule, both open and closed-shell.
# Qiskit Optimization
Qiskit component that covers the whole range from high-level modeling of optimization problems.
# Qiskit Machine Learning
Qiskit component that contains classification algorithms such as QSVM and VQC (Variational Quantum Classifier). There is also QGAN (Quantum Generative Adversarial Network)
# Qiskit Finance
Qiskit component that contains uncertainty components for stock/securities problems, Ising translators for portfolio optimizations and data providers to source real or random data to finance experiments.
# Qiskit Tutorial
Jupyter notebook filled with tutorials for Qiskit.
# Quantum Katas
Programming exercises for learning Q# and quantum computing.
# Quantum TSP
Tutorials on solving Travelling Salesman Problem using quantum computing (QAOA).
# QuantumFlow
Quantum Algorithms Development Toolkit e.g. allowing for backpropagation with QAOA.
# QuantumTomography.jl
Julia package to perform quantum state and process tomography.
# Quantum_Edward
Python tools for supervised learning by Quantum Neural Networks
# VQF
Implementation of Variational Quantum Factoring algorithm (in pyQuil)
# XACC Examples
Example code using XACC for quantum computing.
# XACC QChem
QPU Benchmarks for Quantum Chemistry via XACC, Psi4 and OpenFermion.
# XACC VQE
Variational quantum eigensolver built on XACC for distributed, and shared memory systems.
# Quantum compilers
# Arline Benchmarks
Automated benchmarking platform for quantum compilers, quantum hardware and quantum algorithms.
# Mitiq
Cross-platform, error-mitigating quantum compiler from Unitary Fund.
# PyZX
Python library for quantum circuit rewriting and optimisation using the ZX-calculus.
# QGL.jl
A performance orientated QGL compiler.
# QGL2 Compiler
Language compiler for imperative Quantum Gate Language (QGL).
# Qiskit Terra
Python library for quantum circuit rewriting and optimization (supported by IBM).
# Qubiter
Quantum compiler with Python wrapper for LAPACK’s CS Decomposition to build a binary tree of matrices.
# ScaffCC
Compilation, analysis and optimization framework for the Scaffold quantum programming language.
# UniversalQCompiler
Synthesis of isometries (including unitaries and state preparation), channels and POVMs.
# quilc
Rigetti’s optimizing Quil compiler.
# Quantum assembly
# Blackbird
Open-source quantum instruction language currently used for Xanadu’s photonic hardware.
# OpenQASM
Open-source quantum assembly language.
# QMASM
A quantum macro assembler for D-Wave’s quantum annealers.
# Quil
An open hybrid quantum/classical instruction set currently used by Rigetti. Parser
# Quantum and post-quantum cryptography
# QRL
Quantum Resistant Ledger utilizing hash-based one-time merkle tree signature scheme instead of ECDSA.
# liboqs
C library for quantum-resistant cryptographic algorithms.
# openssh
OpenSSH with quantum-safe key exchange algorithms.
# openssl
OpenSSL with quantum-safe cryptographic algorithms.
# Experimental quantum computing
# ARTIQ
Next-generation control system for quantum information experiments.
# PyQLab
Library for instrument control and superconducting QIP experiments.
# QFlow-lite
Machine Learning tools for autotuning quantum dot experiments.
# QGL
Domain-specific language embedded in Python for specifying pulse sequences.
# Qlab
Measurement and control software for superconducting qubits.
# Qlab.jl
Generic lab tools in Julia.
# Quince
Node-based GUI that allows for graphical configuration of qubit experiments in Auspex.
# qupulse
Quantum computing pulse parametrization and sequencing framework (formerly qc-toolkit).
# Quantum fun
# Entanglion
The world’s first open source quantum computing board game. For 2 players.
# QSEL
Quantum programming language putting entanglement and superposition front and center.
# Quantum Awesomeness
Simple puzzles to benchmark various quantum processor.
# Quantum Battleships
Playing battleships with quantum measurements.
# Quantum Catsweeper
Quantum game loosely based on Minesweeper Flag.
# Quantum Game with Photons
Puzzle game in browser, with polarization, superposition, and measurement.
# Quantum Music Composer for IBM Q
Compose and perform quantum music with IBM Q.
# Quantum Music Composer for Rigetti
Compose and perform quantum music with Rigetti’s Forest.
# SudoQ
Sudoku solver that leverages a D-Wave Quantum Annealer.
# bloqit
A tiny qubit duel for your smart phone.
# feyn
Puzzle game for the browser in which you need to find the combination of gates that the qubits need to pass.
# Quantum tools
# IBM Q bot
Bot for Slack and Telegram to monitor the load of IBM Q quantum computers.
# QI
Toolkit for common quantum information functions.
# QuantumGraphs
Grow and study random graphs by a continuous, randomly collapsing quantum walk.
# Quil syntax highlighter
Syntax highlighter for PyCharm.
# toqito
Framework to study problems pertaining to entanglement theory, nonlocal games, and other aspects of quantum information.
# Abandoned projects
# PySimulator
Python with C++ backend simulator for superconducting circuits.
# QACG
Quantum Arithmetic Circuit Generator in Haskell.
# QCViewer
A visual quantum circuit design and simulation tool.
# Qiskit-JS
Quantum information software kit for JavaScript (supported by IBM).
# Squankum
Visual Java quantum simulator.
# libquantum
C library for quantum computing and quantum simulation.
# pQCS
Parallel quantum circuit synthesis with optimal T-count.