Original data
Most popular quantum computing frameworks
All 22 major quantum programming frameworks, ranked by GitHub stars, then ranked again by a year of actual upkeep. The two rankings disagree sharply, and the gap is the most useful thing on this page.
Framework, library, or language?
People say "quantum programming language" for all of these, but most are not languages. A library (or framework, or SDK) is code you import into a language you already know: you write ordinary Python and call Qiskit, Cirq, or PennyLane. A language has its own syntax and compiler that you learn from scratch.
Of the 22 here, only Q# and OpenQASM are genuine languages: Q# is Microsoft's dedicated quantum language, with its own syntax you learn from scratch, and OpenQASM is a low-level, assembly-style format that other tools compile to rather than something you write whole programs in. Everything else is a library you call from a language you already know, most of them from Python, a couple from Julia (Yao, Bloqade), and one, tket, whose fast C++ core you drive from Python.
One more distinction the table makes explicit: the language a project is built in is not the language you write in. tket is written in C++ but you use it from Python; Q#'s compiler is written in Rust but you write Q#. The "you write in" column is the one that matters when you sit down to code.
Ranked by GitHub stars
| # | Framework | Stars | Forks | Since | Activity | You write in | License |
|---|---|---|---|---|---|---|---|
| 1 | Qiskit | 7,638 | 2,982 | 2017 · 9.4y | active | Python | Apache-2.0 |
| 2 | Cirq | 5,020 | 1,249 | 2017 · 8.6y | active | Python | Apache-2.0 |
| 3 | PennyLane | 3,367 | 840 | 2018 · 8.3y | active | Python | Apache-2.0 |
| 4 | TensorFlow Quantum | 2,172 | 658 | 2020 · 6.5y | active | Python | Apache-2.0 |
| 5 | QuTiP | 2,046 | 776 | 2012 · 13.8y | active | Python | BSD-3-Clause |
| 6 | OpenFermion | 1,714 | 430 | 2017 · 8.8y | active | Python | Apache-2.0 |
| 7 | PyQuil | 1,494 | 358 | 2017 · 9.5y | active | Python | Apache-2.0 |
| 8 | OpenQASM language | 1,488 | 359 | 2017 · 9.4y | active | OpenQASM | Apache-2.0 |
| 9 | CUDA-Q | 1,100 | 426 | 2023 · 3.4y | active | Python or C++ | Apache-2.0 |
| 10 | Yao.jl | 1,037 | 131 | 2018 · 8.3y | slowing | Julia | other |
| 11 | Q# language | 974 | 205 | 2023 · 3.5y | active | Q# | MIT |
| 12 | Strawberry Fields | 853 | 224 | 2018 · 8.3y | stale | Python | Apache-2.0 |
| 13 | Stim | 789 | 221 | 2021 · 5.4y | active | Python or C++ | Apache-2.0 |
| 14 | D-Wave Ocean | 531 | 188 | 2017 · 8.7y | active | Python | Apache-2.0 |
| 15 | Mitiq | 441 | 233 | 2020 · 6.5y | active | Python | GPL-3.0 |
| 16 | Amazon Braket SDK | 371 | 192 | 2019 · 6.7y | active | Python | Apache-2.0 |
| 17 | Qibo | 360 | 96 | 2020 · 6.4y | active | Python | Apache-2.0 |
| 18 | tket (pytket) | 314 | 61 | 2021 · 4.9y | active | Python | Apache-2.0 |
| 19 | Bloqade.jl | 212 | 44 | 2021 · 4.8y | slowing | Julia | other |
| 20 | Perceval | 203 | 91 | 2022 · 4.3y | active | Python | other |
| 21 | Superstaq | 129 | 24 | 2022 · 4.4y | active | Python | Apache-2.0 |
| 22 | OpenQL | 109 | 51 | 2017 · 9.3y | stale | Python or C++ | other |
Stars, forks and dates from the GitHub API on 24 July 2026. "Activity" is time since the last commit: active (within 30 days), slowing (within 6 months), stale (longer). "Since" is the year the repository was created.
Popular is not the same as maintained
Stars accumulate and never expire. A project that was exciting in 2019 keeps its stars even if nobody has touched it since, which is why a ranking by popularity quietly flatters abandoned code. So we measured the other thing: for each repository, every week of commit activity over the last 52 weeks, every release shipped in the last 12 months, and the total number of people who have ever landed a commit.
Ranking the same 22 projects by commits over the last year instead of stars reorders the list substantially. Qibo moves up 15 places, from 17th by stars to 2nd by commits. In the other direction, PyQuil and TensorFlow Quantum are both in the top 7 by stars and near the bottom by work done.
| # | Framework | vs stars | Commits52 weeks | Weekly pattern | Activeweeks | Upkeep | People | Releases12 months | Latest |
|---|---|---|---|---|---|---|---|---|---|
| 1 | PennyLane | ▲2 | 1,419 | 52/52 | steady | 216 | 11 | Jun 2026 | |
| 2 | Qibo | ▲15 | 1,379 | 49/52 | steady | 59 | 8 | Jun 2026 | |
| 3 | Qiskit | ▼2 | 1,195 | 51/52 | steady | 462 | 22 | Jul 2026 | |
| 4 | CUDA-Q | ▲5 | 987 | 51/52 | steady | 104 | 5 | Jul 2026 | |
| 5 | QuTiP | same | 675 | 48/52 | steady | 190 | 5 | May 2026 | |
| 6 | Q# | ▲5 | 545 | 51/52 | steady | 64 | 11 | Jul 2026 | |
| 7 | Cirq | ▼5 | 403 | 51/52 | steady | 263 | 2 | Jun 2026 | |
| 8 | D-Wave Ocean | ▲6 | 271 | 44/52 | steady | 22 | 5 | Jun 2026 | |
| 9 | Amazon Braket SDK | ▲7 | 243 | 44/52 | steady | 75 | 60 | Jul 2026 | |
| 10 | OpenFermion | ▼4 | 188 | 33/52 | intermittent | 87 | 2 | Jul 2026 | |
| 11 | Mitiq | ▲4 | 157 | 37/52 | intermittent | 93 | 5 | Mar 2026 | |
| 12 | tket (pytket) | ▲6 | 145 | 42/52 | steady | 36 | 21 | Jul 2026 | |
| 13 | Perceval | ▲7 | 136 | 40/52 | steady | 39 | 7 | Jul 2026 | |
| 14 | Superstaq | ▲7 | 121 | 43/52 | steady | 38 | 19 | May 2026 | |
| 15 | TensorFlow Quantum | ▼11 | 102 | 27/52 | intermittent | 43 | 2 | Feb 2026 | |
| 16 | OpenQASM | ▼8 | 76 | 26/52 | intermittent | 78 | – | May 2024 | |
| 17 | Stim | ▼4 | 57 | 20/52 | intermittent | 41 | 1 | May 2026 | |
| 18 | Yao.jl | ▼8 | 20 | 11/52 | dormant | 34 | 2 | Mar 2026 | |
| 19 | PyQuil | ▼12 | 11 | 4/52 | dormant | 96 | 10 | Jul 2026 | |
| 20 | Bloqade.jl | ▼1 | 3 | 2/52 | dormant | 25 | – | Apr 2025 | |
| 21 | Strawberry Fields | ▼9 | 2 | 2/52 | dormant | 43 | – | Jun 2022 | |
| 22 | OpenQL | same | 0 | no commits | 0/52 | dormant | 23 | – | Jan 2024 |
Commit counts, releases and contributors from the GitHub API on 24 July 2026, covering the 52 weeks to that date. "vs stars" is the movement between this ranking and the star ranking above. "Active weeks" counts weeks with at least one commit, which separates steady work from a single burst. Each sparkline is scaled to that project's own busiest week, so compare the shape rather than the height; the busiest single week in the whole set was 96 commits. "People" is everyone who has ever landed a commit, not current maintainers.
What the numbers say
The 22 projects hold 32,362 stars and 9,839 forks between them, but the distribution is top-heavy: Qiskit, Cirq and PennyLane alone are 50% of all the stars. The head of the field is the IBM, Google and Xanadu triad, exactly the projects with the largest teams and marketing behind them, which is the first reason to read stars as visibility rather than merit.
Python owns the ecosystem: 15 of 22 projects are built in Python, and nearly everyone writes Python even when the engine underneath is C++ (Stim, tket) or Rust (Q#'s compiler). Julia (Yao, Bloqade) is the only real alternative host language with traction.
Adjusted for age, the fastest growers are Qiskit (~813 stars/year), Cirq (~583 stars/year), PennyLane (~407 stars/year), TensorFlow Quantum (~336 stars/year), with NVIDIA's CUDA-Q and Microsoft's Q# standing out as the young projects climbing quickest. Maintenance is the counterweight, and it is measured properly in the section above: 18 of 22 projects were touched within the last month, but a single commit is a low bar, and counting whole weeks of activity across a year separates the genuinely staffed projects from the ones receiving occasional dependency bumps.
One gotcha for each
Popularity does not tell you what will bite you. Here is the single thing to know about each, in the same star order.
- Qiskit
- Big API breaks between major versions; older tutorial code often fails on 1.x.
- Cirq
- Qubits carry hardware placement; fewer high-level algorithm helpers than Qiskit.
- PennyLane
- Built around autodiff; overkill if you are not doing QML, and speed depends on the backend.
- TensorFlow Quantum
- Pinned to specific TensorFlow and Cirq versions; fragile to install and slow to update.
- QuTiP
- A dynamics and open-quantum-systems simulator, not a gate-circuit framework for hardware.
- OpenFermion
- A chemistry/fermion operator library used with Cirq or others, not a standalone framework.
- PyQuil
- Barely developed now, quiet for most of the last year; needs external quilc and QVM binaries, and is Rigetti-specific.
- OpenQASM
- A low-level assembly-style language and interchange format, not one you write whole programs in.
- CUDA-Q
- Shows its value on NVIDIA GPUs; younger, fast-moving API and heavier setup.
- Yao.jl
- Development has slowed sharply, with commits in only a minority of recent weeks; Julia-only, so a smaller ecosystem, first-run compile latency, and fewer tutorials.
- Q#
- A separate language, not a Python library, so a bigger learning curve; hardware runs via Azure.
- Strawberry Fields
- Photonic continuous-variable model, not qubit gates; effectively in maintenance mode.
- Stim
- Blazing fast but stabilizer/Clifford only; not a general universal simulator.
- D-Wave Ocean
- Quantum annealing only; you must recast problems as QUBO/Ising, and it targets D-Wave hardware.
- Mitiq
- An error-mitigation toolkit you bolt onto Qiskit or Cirq, not a circuit framework itself.
- Amazon Braket SDK
- A thin AWS cloud client; hardware runs cost money and you work inside the AWS ecosystem.
- Qibo
- Smaller, academic-led community; thinner ecosystem and docs than the majors.
- tket (pytket)
- Primarily a circuit compiler and optimizer, not where you author circuits; C++ core.
- Bloqade.jl
- Julia-only and specific to neutral-atom analog (QuEra) hardware; niche, lower activity.
- Perceval
- Photonic linear-optics specific (Quandela); a different paradigm with a small ecosystem.
- Superstaq
- A cross-compiler cloud-service client (Infleqtion), not a full framework; ties to their service.
- OpenQL
- Low activity (no commits in roughly two years); academic and effectively stale.
Method and sources
Every number here comes from the public GitHub REST API, read on 24 July 2026. Popularity figures come from the repos endpoint via scripts/fetch_framework_stars.py. Maintenance figures come from stats/commit_activity, releases and contributors via scripts/fetch_framework_activity.py. Both are re-runnable, so the figures are refreshed on demand rather than drifting out of date, and each project links to the repository it was measured from. The editorial fields, what you write in, whether a tool is a language, and the gotchas, are hand-authored and reviewed.
Two limits worth stating. Commit counts reward projects that merge many small commits and under-credit those that squash, so compare the number of active weeks as well as the raw total. Contributor counts include anyone who has ever landed a commit, not just current maintainers. And stars are a proxy for community interest and visibility, not a measure of quality, performance, or fitness for your task: a small, well-run project serving a niche will never out-star a vendor-backed one, and nothing in either table should be read as a quality score. The tables answer "how much attention does this have" and "is anyone still working on it". They do not answer "is this good", which depends entirely on what you are building.