The increasing emergence of quantum computing and the looming quantum informational horizon has encouraged us to educate others of quantum computing paradigms and algorithms. Our goal was to create a simple and pleasant user experience for learning the basics of quantum computing theory.

What it does

conQuer is a visual in-browser simulation of a quantum computing environment. Aimed at people with an interest in computer science, conQuer introduces them to the quantum informational world without going into much physics at all.

How we built it

The quantum simulation engine was built using real matrix math and linear algebra with math.js as our math helper library. Values of qubits after collapsing are generated using JavaScript's psuedo-random number generator. The front-end interacts with our quantum simulation engine using vue.js.

Challenges we ran into

None of us has had any experience in anything related to quantum computing paradigms, algorithms, or implementations of quantum circuit gates. A large portion of our time was spent at the whiteboards trying to work out the linear algebra required to perform an operation on a couple of qubits. At one point we realized it was impossible to factor the tensor product of two qubits after an operation was applied, but using some pure math we're still able to perform operations on individual qubits by using an expanded operation matrix on the entire tensor product of the state.

Accomplishments that we're proud of

We had no idea if we would be able to even write a quantum computer environment simulator coming into this weekend. The fact that we have something that works and simulates the same operations on qubits as a true quantum computer is something that we're very proud of.

What we learned

A lot of linear algebra, a lot of quantum information and computer theory, and a lot of the concepts required to mesh the quantum and classical worlds together.

What's next for conQuer

We want to implement a way to export the user generated circuits to QASM, as well as further polishing the interface and implementing more quantum gates.


We want to thank John Watrous, a computer science professor at the University of Waterloo, for making his lecture notes on quantum information and quantum computing freely available online. We also want to thank Andrew Helwer from Microsoft for his presentation on quantum computing without which we would not have been inspired to start this project. Several open source software libraries were used on this project to help with implementation of the user interface, as well as the matrix math required for implementing quantum logic gates:

  • semantic-ui
  • dragula
  • vue.js
  • jquery
  • math.js

Built With

Share this project: