Guess the Qubit

Build intuition for qubits by predicting measurements on a playable Bloch sphere — spanning an Unreal Engine desktop game and an AR mobile experience with real quantum hardware jobs.
I built Guess the Qubit as an educational quantum game and a practical implementation of my Quantum API integrations. Instead of beginning with dry mathematical notation, the experience begins with an object: a luminous Bloch sphere, a state vector, and a prediction challenge between two possible measurement results. The project originated as an Unreal Engine prototype where players predict measurements, observe quantum gate transformations, and watch the state vector probabilistically collapse. During the Expo × ReactVision Ctrl+Space hackathon, I adapted this concept into a spatial AR learning application with React Native and ViroReact, allowing users to place the Bloch sphere into physical space, walk around it, and inspect the state vector from any angle. The AR version was named a finalist in the Ctrl+Space hackathon. I unified both platforms into a single monorepo (github.com/DavidJGrimsley/guess-the-qubit) managed with pnpm and Turborepo. Both apps connect to my Quantum API backend—Unreal using a dedicated C++/Blueprint plugin and the mobile AR app using the TypeScript SDK. Players can explore fast local simulator results or submit authentic single-qubit circuits to IBM Quantum hardware, complete with real-time queue polling, visual waiting states, and safe request cancellation.

Skills Used:

View source on GitHubDownload the Windows demoTry the AR prototype on TestFlightWatch the AR demoView the Ctrl+Space finalist entry

Dual-platform visualization: Unreal desktop & spatial AR

The labeled Bloch sphere and guess controls in the Unreal desktop demo.
I built the visual identity around a cyan shell, coordinate axis rings, labeled basis states (|0⟩, |1⟩), and a magenta state vector across both platforms. On desktop, the Unreal Blueprint implementation delivers responsive on-screen interaction and immediate visual feedback. In mobile AR, Viro primitives place the sphere directly into the user's room with placement and scale controls so players can walk around and inspect superposition geometry in 3D space.

Observable game loop: guess, rotate, and collapse

Players select 0 or 1 before seeing the result. The gate rotation animation and collapse make each round observable, while win/loss feedback encourages another attempt. A round synchronizes its introductory animation with a valid measurement before collapsing the state vector according to Born rule probabilities. This core loop makes abstract quantum principles intuitive and hands-on.

Real quantum computing with honest asynchronous feedback

The game exercises my Quantum API backend through the Unreal C++/Blueprint plugin and the TypeScript SDK in Expo. Simulator mode executes rotation measurements via Qiskit's Statevector. Hardware mode submits circuits to real IBM Quantum processors and polls for results, displaying pulsing visual indicators and queued/running feedback rather than instant fake responses. Session resets, exits, and retries cleanly cancel pending jobs to avoid wasting quantum hardware queue slots.

Unified monorepo architecture

I consolidated both applications into a single monorepo (github.com/DavidJGrimsley/guess-the-qubit) managed by pnpm and Turborepo. It isolates the Expo SDK 57 mobile AR app (apps/expo) and Unreal Engine 5.8 desktop project (apps/unreal), enforces LF line endings and dependency patches, includes an offline EAS ignore simulation to prevent shipping desktop assets with mobile builds, and automates CI test suites across both projects.

Related Projects:

Explore Neo Rock ’Em Sock ’Em Robots →Explore Medimagen →See the MDS tools used to prototype these AR apps →Explore my Quantum API and its engine integrations →
⏷
⏷
index
⏷
⏷
portfolio
⏷
⏷
public-facing
⏷
⏷
contact
⏷
⏷
services
Getting things ready for you...