From 4ec45acc868e920c590cf799ff7892eb46df249e Mon Sep 17 00:00:00 2001
From: Arnau Casau <47946624+arnaucasau@users.noreply.github.com>
Date: Fri, 17 Nov 2023 21:14:25 +0100
Subject: [PATCH] Ecosystem webpage: design updates (#589)
### Summary
This PR updates the design of the ecosystem webpage.
### Details and comments
This PR introduces the following changes:
- New description in the header
- New title and description for each section
- The color purple of buttons and links have changed to blue
- The icon for the header button has changed to the GitHub logo
- New icon for the links
- Projects sorted by stars
Link to the preview: https://arnaucasau.github.io/ecosystem/
---
ecosystem/html_templates/link.html.jinja | 9 +-
ecosystem/html_templates/webpage.html.jinja | 116 +-
ecosystem/manager.py | 9 +-
website/index.html | 1726 +++++++++----------
website/style.css | 58 +-
5 files changed, 969 insertions(+), 949 deletions(-)
diff --git a/ecosystem/html_templates/link.html.jinja b/ecosystem/html_templates/link.html.jinja
index 87be5ca442..0cb3f428c7 100644
--- a/ecosystem/html_templates/link.html.jinja
+++ b/ecosystem/html_templates/link.html.jinja
@@ -8,14 +8,13 @@
fill="currentColor"
width="16"
height="16"
- viewBox="0 0 16 16"
+ viewBox="0 0 32 32"
aria-hidden="true"
data-v-bdc8f36d=""
>
-
Explore projects that use or extend Qiskit
++ Explore projects and hardware providers that leverage the open-source + Qiskit toolkit or are built on top of it. +
Run your quantum programs
++ Access IBM Quantum and 3rd party systems and simulators to the following + providers +
Use quantum computing to solve real-world problems
-+ Explore packages that help apply quantum technology to real-world use + cases +
+Cool projects that extend, interface with, or use Qiskit
Explore projects that use or extend Qiskit
++ Explore projects and hardware providers that leverage the open-source + Qiskit toolkit or are built on top of it. +
Run your quantum programs
++ Access IBM Quantum and 3rd party systems and simulators to the following + providers +
Project contains a provider that allows accessing the IBM Quantum systems and simulators.
+This module provides the interface to access Qiskit Runtime.
Project contains a provider that allows access to IonQ ion trap quantum systems.
+Project contains a provider that allows accessing the IBM Quantum systems and simulators.
This package is used to access SuperstaQ via a Web API through Qiskit. Qiskit programmers can take advantage of the applications, pulse level optimizations, and write-once-target-all features of SuperstaQ with this package.
+Project contains a provider that allows access to IonQ ion trap quantum systems.
Rigetti Provider for Qiskit
+Qiskit provider for ion-trap quantum computers from Alpine Quantum Technologies (AQT). https://www.aqt.eu/qc-systems/
Qiskit provider for ion-trap quantum computers from Alpine Quantum Technologies (AQT). https://www.aqt.eu/qc-systems/
+Qiskit-cold-atom builds on core Qiskit functionalities to integrate programmable quantum simulators of trapped cold atoms in a gate- and circuit-based framework. The project includes a provider and simulators for fermionic and spin-based systems.
This module provides the interface to access Qiskit Runtime.
+Rigetti Provider for Qiskit
Qiskit-cold-atom builds on core Qiskit functionalities to integrate programmable quantum simulators of trapped cold atoms in a gate- and circuit-based framework. The project includes a provider and simulators for fermionic and spin-based systems.
+This package is used to access SuperstaQ via a Web API through Qiskit. Qiskit programmers can take advantage of the applications, pulse level optimizations, and write-once-target-all features of SuperstaQ with this package.
Use quantum computing to solve real-world problems
-+ Explore packages that help apply quantum technology to real-world use + cases +
+This repository contains the latest prototype implementation of the Qiskit Nature + PySCF DFT Embedding. It is based on the following publication: > Max Rossmannek, Panagiotis Kl. Barkoutsos, Pauline J. Ollitrault, Ivano Tavernelli; > Quantum HF/DFT-embedding algorithms for electronic structure calculations: Scaling up to complex molecular systems. > J. Chem. Phys. 21 March 2021; 154 (11): 114105.
+A PyTorch-centric hybrid classical-quantum dynamic neural networks framework.
Qiskit Nature PySCF is a third-party integration plugin of Qiskit Nature and PySCF.
+The Machine Learning package contains sample datasets and quantum ML algorithms.
The quantum kernel training (QKT) toolkit is designed to enable users to leverage quantum kernels for machine learning tasks; in particular, researchers who are interested in investigating quantum kernel training algorithms in their own research, as well as practitioners looking to explore and apply these algorithms to their machine learning applications.
- -Qiskit Algorithms is a library of quantum algorithms based on Qiskit, suitable to run on near-term quantum devices with short-depth circuits.
+Qiskit Nature allows researchers and developers in different areas of natural sciences (including physics, chemistry, material science and biology) to model and solve domain-specific problems using quantum simulations
Dynamics is an open-source project for building, transforming, and solving time-dependent quantum systems in Qiskit.
+Qiskit Finance is an open-source framework 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.
QiskitOpt.jl is a Julia package that exports a JuMP wrapper for qiskit-optimization.
+Framework that covers the whole range from high-level modeling of optimization problems, with automatic conversion of problems to different required representations, to a suite of easy-to-use quantum optimization algorithms that are ready to run on classical simulators, as well as on real quantum devices via Qiskit.
A PyTorch-centric hybrid classical-quantum dynamic neural networks framework.
- -A library for supervised machine learning based on quantum computing and Riemannian geometry. The project is built on top of the Qiskit and pyRiemmann projects and, focuses on the classification of time series data.
+Dynamics is an open-source project for building, transforming, and solving time-dependent quantum systems in Qiskit.
The SSVQE algorithm (https://arxiv.org/abs/1810.09434) is a generalization of VQE to find low-lying eigenstates of a Hermitian operator. This specific implementation of SSVQE carries out one optimization procedure using weights.
- -This module allows a user to simulate chemical and physical systems using a Variational Quantum Eigensolver (VQE) enhanced by Entanglement Forging. Entanglement Forging doubles the size of the system that can be exactly simulated on a fixed set of quantum bits.
+NQI C2QA project to simulate hybrid boson-qubit systems within Qiskit.
Qiskit Finance is an open-source framework 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 Algorithms is a library of quantum algorithms based on Qiskit, suitable to run on near-term quantum devices with short-depth circuits.
The Quantum Random Access Optimization (QRAO) module is designed to enable users to leverage a new quantum method for combinatorial optimization problems.
+The quantum kernel training (QKT) toolkit is designed to enable users to leverage quantum kernels for machine learning tasks; in particular, researchers who are interested in investigating quantum kernel training algorithms in their own research, as well as practitioners looking to explore and apply these algorithms to their machine learning applications.
Qiskit Nature allows researchers and developers in different areas of natural sciences (including physics, chemistry, material science and biology) to model and solve domain-specific problems using quantum simulations
+This module allows a user to simulate chemical and physical systems using a Variational Quantum Eigensolver (VQE) enhanced by Entanglement Forging. Entanglement Forging doubles the size of the system that can be exactly simulated on a fixed set of quantum bits.
The Quantum Random Access Optimization (QRAO) module is designed to enable users to leverage a new quantum method for combinatorial optimization problems.
+ +NQI C2QA project to simulate hybrid boson-qubit systems within Qiskit.
+A library for supervised machine learning based on quantum computing and Riemannian geometry. The project is built on top of the Qiskit and pyRiemann projects and focuses on the classification of time series data.
Framework that covers the whole range from high-level modeling of optimization problems, with automatic conversion of problems to different required representations, to a suite of easy-to-use quantum optimization algorithms that are ready to run on classical simulators, as well as on real quantum devices via Qiskit.
+Qiskit Nature PySCF is a third-party integration plugin of Qiskit Nature and PySCF.
The Machine Learning package contains sample datasets and quantum ML algorithms.
+QiskitOpt.jl is a Julia package that exports a JuMP wrapper for qiskit-optimization.
The Variational Quantum Linear Solver (VQLS) uses an optimization approach to solve linear systems of equations. The vqls-prototype allows to easily setup and deploy a VQLS instance on different backends through the use of qiskit primitives and the runtime library
+This repository contains the latest prototype implementation of the Qiskit Nature + PySCF DFT Embedding. It is based on the following publication: > Max Rossmannek, Panagiotis Kl. Barkoutsos, Pauline J. Ollitrault, Ivano Tavernelli; > Quantum HF/DFT-embedding algorithms for electronic structure calculations: Scaling up to complex molecular systems. > J. Chem. Phys. 21 March 2021; 154 (11): 114105.
Cool projects that extend, interface with, or use Qiskit
-A discord bot that allows you to execute Quantum Circuits, look up the Qiskit's Documentation, and search questions on the Quantum Computing StackExchange
+The Variational Quantum Linear Solver (VQLS) uses an optimization approach to solve linear systems of equations. The vqls-prototype allows to easily setup and deploy a VQLS instance on different backends through the use of qiskit primitives and the runtime library
quantumcat is a platform-independent, open-source, high-level quantum computing library, which allows the quantum community to focus on developing platform-independent quantum applications without much effort
+The SSVQE algorithm (https://arxiv.org/abs/1810.09434) is a generalization of VQE to find low-lying eigenstates of a Hermitian operator. This specific implementation of SSVQE carries out one optimization procedure using weights.
Cool projects that extend, interface with, or use Qiskit
+Qiskit-classroom is a toolkit that helps implement quantum algorithms by converting and visualizing different expressions used in the Qiskit ecosystem using Qiskit-classroom-converter. The following three transformations are supported : Quantum Circuit to Dirac notation, Quantum Circuit to Matrix, Matrix to Quantum Circuit etc...
+OpenQASM is an imperative programming language designed for near-term quantum computing algorithms and applications. Quantum programs are described using the measurement-based quantum circuit model with support for classical feed-forward flow control based on measurement outcomes.
OpenQASM is an imperative programming language designed for near-term quantum computing algorithms and applications. Quantum programs are described using the measurement-based quantum circuit model with support for classical feed-forward flow control based on measurement outcomes.
+Aer provides high-performance quantum computing simulators with realistic noise models.
The qBraid-SDK is a Python toolkit for cross-framework abstraction, transpilation, and execution of quantum programs.
+A quantum computing SDK
Mitiq is a Python toolkit for implementing error mitigation techniques on quantum computers
+ +Implements expectation value measurements in Qiskit using optimal dense grouping. Dense-ev provides an improvement of ~2^m over naive grouping and (3/2)^m over qubit-wise commuting groups. Based on arXiv:2305.11847.
+Qiskit Metal is an open-source framework for engineers and scientists to design superconducting quantum devices with ease.
Qiskit Metal E&M analysis with Ansys and the energy-participation-ratio method is based on pyEPR.
+ +A doubly stochastic matrices-based approach to optimal qubit routing
+The PennyLane-Qiskit plugin integrates the Qiskit quantum computing framework with PennyLane's quantum machine learning capabilities
platform allows to execute quantum algorithms using the cQASM language.
+Qiskit Experiments is an open-source project for running characterizing, calibrating, and benchmarking experiments in Qiskit.
Qiskit Topological Codes
- -- Spinoza is a quantum state simulator (implemented in Rust) that is one of the fastest open-source simulators. Spinoza is implemented using a functional approach. Additionally, Spinoza has a `QuantumCircuit` object-oriented interface, which partially matches Qiskit's interface. Spinoza is capable of running in a myriad of computing environments (e.g., small workstations), and on various architectur...es. At this juncture, Spinoza only utilizes a single thread; however, it is designed to be easily extended into a parallel version, as well as a distributed version. The paper associated with Spinoza is available [here](https://arxiv.org/pdf/2303.01493.pdf). -
- +RasQberry is a functional model of IBM Quantum System One, and can run Qiskit on the integrated Raspberry Pi
GitHub Codespace template repository based on Zoose Quantum, a custom Docker image with everything included, so you can be up and running with any of the major quantum libraries (incl. Qiskit) with only two clicks! No installation required. Ideal for beginners or people who want to code quantum circuits on the go. Code quantum circuits straight in your browser with VSCode.
+A quantum version of the classic game Pong built with Qiskit and PyGame
Code base on the paper Kernel Matrix Completion for Offline Quantum-Enhanced Machine Learning [2112.08449](https://arxiv.org/abs/2112.08449).
+Qiskit Topological Codes
- Distributed quantum computing is a concept that proposes to connect multiple quantum computers in a network to leverage a collection of more, but physically separated, qubits. In order to perform distributed quantum computing, it is necessary to add the addition of classical communication and entanglement distribution so that the control information from one qubit can be applied to another that is... located on another quantum computer. For more details on distributed quantum computing, see this blog post: [Distributed Quantum Computing: A path to large scale quantum computing](https://medium.com/@stephen.diadamo/distributed-quantum-computing-1c5d38a34c50) In this project, we aim to validate distributed quantum algorithms using Qiskit. Because Qiskit does not yet come with networking features, we embed a "virtual network topology" into large circuits to mimic distributed quantum computing. The idea is to take a monolithic quantum circuit developed in the Qiskit language and distribute the circuit according to an artificially segmented version of a quantum processor. The inputs to the library are a quantum algorithm written monolithically (i.e., in a single circuit) and a topology parameter that represents the artificial segmentation of the single quantum processor. The algorithm takes these two inputs and remaps the Qiskit circuit to the specified segmentation, adding all necessary steps to perform an equivalent distributed quantum circuit. Our algorithm for achieving this is based on the work: [Distributed Quantum Computing and Network Control for Accelerated VQE](https://ieeexplore.ieee.org/document/9351762). The algorithm output is another Qiskit circuit with the equivalent measurement statistics but with all of the additional logic needed to perform a distributed version. -
- +The C3 package is intended to close the loop between open-loop control optimization, control pulse calibration, and model-matching based on calibration data.
A lightweight framework to enable configurable memory consumption when simulating large quantum circuits.
+platform allows to execute quantum algorithms using the cQASM language.
The PennyLane-Qiskit plugin integrates the Qiskit quantum computing framework with PennyLane's quantum machine learning capabilities
+This project contains modules for running quantum computing research experiments using Qiskit and the IBM Quantum Services, demonstrating by example best practices for running such experiments.
an extension to Pytket (a python module for interfacing with CQC tket) that allows Pytket circuits to be run on IBM backends and simulators, as well as conversion to and from Qiskit representations.
+Circuit Knitting is the process of decomposing a quantum circuit into smaller circuits, executing those smaller circuits on a quantum processor(s), and then knitting their results into a reconstruction of the original circuit's outcome. Circuit knitting includes techniques such as entanglement forging, circuit cutting, and classical embedding. The Circuit Knitting Toolbox (CKT) is a collection of such tools.
The C3 package is intended to close the loop between open-loop control optimization, control pulse calibration, and model-matching based on calibration data.
+Framework for Quantum Error Correction is an open-source framework for developers, experimentalist and theorists of Quantum Error Correction (QEC).
What would happen if you combine Tetris with a Quantum computer? The winning entry of the Quantum Design Jam from IBM and Parsons in October 2021 explores just that!
+The qBraid-SDK is a Python toolkit for cross-framework abstraction, transpilation, and execution of quantum programs.
Visualise the effects of Single Qubit Gates on a Qubit via Bloch Sphere Simulation in a Tkinter Software.
- -A Python-Qiskit-based package that provides capabilities of easily generating, executing and analyzing quantum circuits for satisfiability problems according to user-defined constraints. The circuits being generated by the program are based on Grover's algorithm and its amplitude-amplification generalization.
+The Quantum Serverless package aims to allow developers to easily offload computations to cloud resources, without being experts in packaging code for remote execution environments.
Aer provides high-performance quantum computing simulators with realistic noise models.
+A template repository for generating new quantum prototypes based on Qiskit.
RasQberry is a functional model of IBM Quantum System One, and can run Qiskit on the integrated Raspberry Pi
+Matrix-free Measurement Mitigation (M3)
Project is aimed to create simple general interface to track quantum experiments, store and search them in an easy way.
+A discord bot that allows you to execute Quantum Circuits, look up the Qiskit's Documentation, and search questions on the Quantum Computing StackExchange
quantumcat is a platform-independent, open-source, high-level quantum computing library, which allows the quantum community to focus on developing platform-independent quantum applications without much effort
+ +Easy-to-use Python package designed to enable symbolic quantum computation in Qiskit. It provides the basic tools for the symbolic evaluation of statevectors, density matrices, and unitary operators directly created from parametric Qiskit quantum circuits. The implementation is based on the Sympy library as backend for symbolic expressions manipulation.
+Kaleidoscope
Matrix-free Measurement Mitigation (M3)
+ ++ Spinoza is a quantum state simulator (implemented in Rust) that is one of the fastest open-source simulators. Spinoza is implemented using a functional approach. Additionally, Spinoza has a `QuantumCircuit` object-oriented interface, which partially matches Qiskit's interface. Spinoza is capable of running in a myriad of computing environments (e.g., small workstations), and on various architectur...es. At this juncture, Spinoza only utilizes a single thread; however, it is designed to be easily extended into a parallel version, as well as a distributed version. The paper associated with Spinoza is available [here](https://arxiv.org/pdf/2303.01493.pdf). +
+Framework for Quantum Error Correction is an open-source framework for developers, experimentalist and theorists of Quantum Error Correction (QEC).
+Easy-to-use Python package designed to enable symbolic quantum computation in Qiskit. It provides the basic tools for the symbolic evaluation of statevectors, density matrices, and unitary operators directly created from parametric Qiskit quantum circuits. The implementation is based on the Sympy library as backend for symbolic expressions manipulation.
- The repository contains a standalone routing stage plugin to use the BIPMapping [routing](https://qiskit.org/documentation/apidoc/transpiler.html#routing-stage) pass. The BIP mapping pass solves the routing and [layout](https://qiskit.org/documentation/apidoc/transpiler.html#layout-stage) problems as a binary integer programming (BIP) problem. The algorithm used in this pass is described in: G. Na...nnicini et al. "Optimal qubit assignment and routing via integer programming." [arXiv:2106.06446](https://arxiv.org/abs/2106.06446) -
- +Python package uses a backend written in Julia to implement high performance features for standard Qiskit.
Qiskit Metal E&M analysis with Ansys and the energy-participation-ratio method is based on pyEPR.
+What would happen if you combine Tetris with a Quantum computer? The winning entry of the Quantum Design Jam from IBM and Parsons in October 2021 explores just that!
A template repository for generating new quantum prototypes based on Qiskit.
+an extension to Pytket (a python module for interfacing with CQC tket) that allows Pytket circuits to be run on IBM backends and simulators, as well as conversion to and from Qiskit representations.
Visualise the effects of Single Qubit Gates on a Qubit via Bloch Sphere Simulation in a Tkinter Software.
+ +The Quantum Serverless package aims to allow developers to easily offload computations to cloud resources, without being experts in packaging code for remote execution environments.
+A doubly stochastic matrices-based approach to optimal qubit routing
MIRAGE is a transpilation plugin for quantum circuits that minimizes the use of SWAP gates while optimizing native basis gate decomposition through mirror gates. Specifically designed for iSWAP-based quantum systems, MIRAGE improves circuit depth, making quantum algorithms more practical and efficient.
+A lightweight framework to enable configurable memory consumption when simulating large quantum circuits.
A Qiskit transpiler stage plugin to enable qubit reuse via mid-circuit measurement and reset.
+ +A quantum computing SDK
+A Python-Qiskit-based package that provides capabilities of easily generating, executing and analyzing quantum circuits for satisfiability problems according to user-defined constraints. The circuits being generated by the program are based on Grover's algorithm and its amplitude-amplification generalization.
Qiskit Experiments is an open-source project for running characterizing, calibrating, and benchmarking experiments in Qiskit.
+ ++ Distributed quantum computing is a concept that proposes to connect multiple quantum computers in a network to leverage a collection of more, but physically separated, qubits. In order to perform distributed quantum computing, it is necessary to add the addition of classical communication and entanglement distribution so that the control information from one qubit can be applied to another that is... located on another quantum computer. For more details on distributed quantum computing, see this blog post: [Distributed Quantum Computing: A path to large scale quantum computing](https://medium.com/@stephen.diadamo/distributed-quantum-computing-1c5d38a34c50) In this project, we aim to validate distributed quantum algorithms using Qiskit. Because Qiskit does not yet come with networking features, we embed a "virtual network topology" into large circuits to mimic distributed quantum computing. The idea is to take a monolithic quantum circuit developed in the Qiskit language and distribute the circuit according to an artificially segmented version of a quantum processor. The inputs to the library are a quantum algorithm written monolithically (i.e., in a single circuit) and a topology parameter that represents the artificial segmentation of the single quantum processor. The algorithm takes these two inputs and remaps the Qiskit circuit to the specified segmentation, adding all necessary steps to perform an equivalent distributed quantum circuit. Our algorithm for achieving this is based on the work: [Distributed Quantum Computing and Network Control for Accelerated VQE](https://ieeexplore.ieee.org/document/9351762). The algorithm output is another Qiskit circuit with the equivalent measurement statistics but with all of the additional logic needed to perform a distributed version. +
+Project is aimed to create simple general interface to track quantum experiments, store and search them in an easy way.
+ +Qiskit transpiler routing method using the Time-Optimal Qubit Mapping (TOQM) algorithm, described in https://doi.org/10.1145/3445814.3446706
- -Mitiq is a Python toolkit for implementing error mitigation techniques on quantum computers
+Qiskit transpiler routing method using the Time-Optimal Qubit Mapping (TOQM) algorithm, described in https://doi.org/10.1145/3445814.3446706
A quantum version of the classic game Pong built with Qiskit and PyGame
+Implements expectation value measurements in Qiskit using optimal dense grouping. Dense-ev provides an improvement of ~2^m over naive grouping and (3/2)^m over qubit-wise commuting groups. Based on arXiv:2305.11847.
This project contains modules for running quantum computing research experiments using Qiskit and the IBM Quantum Services, demonstrating by example best practices for running such experiments.
- -A Qiskit transpiler stage plugin to enable qubit reuse via mid-circuit measurement and reset.
+ ++ The repository contains a standalone routing stage plugin to use the BIPMapping [routing](https://qiskit.org/documentation/apidoc/transpiler.html#routing-stage) pass. The BIP mapping pass solves the routing and [layout](https://qiskit.org/documentation/apidoc/transpiler.html#layout-stage) problems as a binary integer programming (BIP) problem. The algorithm used in this pass is described in: G. Na...nnicini et al. "Optimal qubit assignment and routing via integer programming." [arXiv:2106.06446](https://arxiv.org/abs/2106.06446) +
+Convert quantum circuits, matrices, and bra-ket strings. This converter includes the following conversion functions: quantum circuit to bra-ket notation, quantum circuit to matrix, matrix to quantum circuit, bra-ket notation to matrix
+MIRAGE is a transpilation plugin for quantum circuits that minimizes the use of SWAP gates while optimizing native basis gate decomposition through mirror gates. Specifically designed for iSWAP-based quantum systems, MIRAGE improves circuit depth, making quantum algorithms more practical and efficient.
Kaleidoscope
+Code base on the paper Kernel Matrix Completion for Offline Quantum-Enhanced Machine Learning [2112.08449](https://arxiv.org/abs/2112.08449).
Python package uses a backend written in Julia to implement high performance features for standard Qiskit.
+Convert quantum circuits, matrices, and bra-ket strings. This converter includes the following conversion functions: quantum circuit to bra-ket notation, quantum circuit to matrix, matrix to quantum circuit, bra-ket notation to matrix
Qiskit Metal is an open-source framework for engineers and scientists to design superconducting quantum devices with ease.
+Qiskit-classroom is a toolkit that helps implement quantum algorithms by converting and visualizing different expressions used in the Qiskit ecosystem using Qiskit-classroom-converter. The following three transformations are supported : Quantum Circuit to Dirac notation, Quantum Circuit to Matrix, Matrix to Quantum Circuit etc...
Circuit Knitting is the process of decomposing a quantum circuit into smaller circuits, executing those smaller circuits on a quantum processor(s), and then knitting their results into a reconstruction of the original circuit's outcome. Circuit knitting includes techniques such as entanglement forging, circuit cutting, and classical embedding. The Circuit Knitting Toolbox (CKT) is a collection of such tools.
+GitHub Codespace template repository based on Zoose Quantum, a custom Docker image with everything included, so you can be up and running with any of the major quantum libraries (incl. Qiskit) with only two clicks! No installation required. Ideal for beginners or people who want to code quantum circuits on the go. Code quantum circuits straight in your browser with VSCode.