Third-party PennyLane plugin for exact and MPS lattice workflows

I would like to share a third-party PennyLane plugin package that is now working through the standard plugin discovery path, and ask whether there is a recommended process for listing or announcing third-party PennyLane plugins.

Package:

  • penq-pennylane

Public devices:

  • penq.qml_starter

  • penq.mps_starter

Current scope:

  • exact backend

  • MPS backend

  • deterministic TFIM workflows

  • 1D, 2D square, and 3D cubic lattice studies

  • exact-vs-MPS comparisons

  • CSV-ready scans and PNG/PDF reports

I verified the standard user flow in a clean environment with:

import pennylane as qml

dev1 = qml.device("penq.qml_starter", wires=2)
dev2 = qml.device("penq.mps_starter", wires=2)

@qml.qnode(dev1)
def circuit1():
    qml.Hadamard(0)
    qml.CNOT(wires=[0, 1])
    return qml.expval(qml.PauliZ(0))

@qml.qnode(dev2)
def circuit2():
    qml.Hadamard(0)
    qml.CNOT(wires=[0, 1])
    return qml.expval(qml.PauliZ(0))

print("qml_starter:", circuit1())
print("mps_starter:", circuit2())

Observed output:

qml_starter: 0.0
mps_starter: 0.0

I also verified plugin discovery from a clean install with:

import pennylane as qml

qml.device("penq.qml_starter", wires=2)
qml.device("penq.mps_starter", wires=2)

In addition, I did a focused plugin compliance cleanup against PennyLane’s device test utility, especially around shots, observables, and measurement behavior.

My questions are:

  1. Is there a recommended process for listing or announcing third-party PennyLane plugins?

  2. Is posting here in the PennyLane Plugins category the preferred route?

  3. Are there any additional plugin-readiness checks you would recommend before broader visibility?

qml.about() from the test environment:

Name: pennylane
Version: 0.44.1
Summary: PennyLane is a cross-platform Python library for quantum computing, quantum machine learning, and quantum chemistry. Train a quantum computer the same way as a neural network.
Home-page: 
Author: 
License: 
Location: /data/penq-pennylane/.venv/lib/python3.13/site-packages
Platform info:           Linux-6.12.74+deb13+1-amd64-x86_64-with-glibc2.41
Python version:          3.13.5
Numpy version:           2.4.4
Scipy version:           1.17.1
JAX version:             None
Installed devices:
- default.clifford (pennylane-0.44.1)
- default.gaussian (pennylane-0.44.1)
- default.mixed (pennylane-0.44.1)
- default.qubit (pennylane-0.44.1)
- default.qutrit (pennylane-0.44.1)
- default.qutrit.mixed (pennylane-0.44.1)
- default.tensor (pennylane-0.44.1)
- null.qubit (pennylane-0.44.1)
- reference.qubit (pennylane-0.44.1)
- penq.mps_starter (penq-pennylane-1.2.0)
- penq.qml_starter (penq-pennylane-1.2.0)
- lightning.qubit (pennylane_lightning-0.44.0)

Thanks.

Hi @gwen , welcome to the Forum and congrats on making this plugin!

The best way to highlight this would be with a community demo.

Community demos are hosted on your own repo, but shown on the PennyLane community demos page.

Community demos have a few advantages:

  • You host them on your own repo so you have plenty of freedom for structuring the demo and including additional datasets or files.
  • They’re generally easy to make since you can use a Jupyter notebook or Python file if you prefer.
  • They generally get published fairly quickly (within a couple of weeks).

You will find the submission guidelines for the community demo at the bottom of our demo submission page. This process will require you to open an issue so we’ll get back to you on the issue once you’ve opened it.

To answer your specific questions:

  1. Community demos are the recommended process for listing or announcing third-party PennyLane plugins.
  2. Posting here in the PennyLane Plugins category is totally ok.
  3. Usually having an online demo that shows the functionality is a good-enough readiness check.

Let us know if you have any questions about the community demo!