Skip to content

alfaarizi/qubit

Repository files navigation

Qubitkit

License Deployment Last commit

Quantum Unitary Benchmarking and Interactive Toolkit

A comprehensive web-based platform for designing, simulating, and analyzing quantum circuits with advanced visualization capabilities powered by the SQUANDER library.

SQUANDER Logo

Features

  • Visual Circuit Composer - Drag-and-drop interface for building quantum circuits
  • QASM Editor - Write and edit circuits using OpenQASM 2.0
  • Circuit Partitioning - Optimize circuits using SQUANDER's partitioning algorithms
  • Visualizations - Statevector density, measurement probabilities, entropy, partition structures
  • Project Management - Organize multiple quantum circuits and experiments
  • Job Monitoring - Real-time execution tracking via WebSocket

Tech Stack

Component Technologies
Frontend React 19, TypeScript, Vite, TailwindCSS, Zustand, D3, Plotly
Backend FastAPI, MongoDB, WebSocket, SQUANDER
Auth Google OAuth, Azure MSAL, JWT

Prerequisites

  • Node.js 18+
  • Python 3.8+
  • MongoDB (local or Atlas)
  • SQUANDER library (optional, for circuit partitioning)

Quick Start

# Clone repository
git clone https://github.com/alfaarizi/qubit.git
cd qubit

# Backend setup
cd backend
cp .env.example .env          # Configure environment variables
pip install -e .
serve                         # Runs on http://localhost:8000

# Frontend setup (new terminal)
cd frontend
cp .env.example .env.local    # Configure environment variables
npm install
npm run dev                   # Runs on http://localhost:5173

See backend/README.md and frontend/README.md for detailed configuration.

Project Structure

qubit/
├── backend/              # FastAPI backend
│   ├── app/              # Application code
│   │   ├── api/          # REST & WebSocket endpoints
│   │   ├── core/         # Config, security, dependencies
│   │   ├── db/           # MongoDB connection
│   │   ├── models/       # Database models
│   │   ├── schemas/      # Pydantic schemas
│   │   └── services/     # Business logic
│   └── tests/            # Unit, integration, performance tests
├── frontend/             # React frontend
│   ├── src/
│   │   ├── components/   # Reusable UI components
│   │   ├── features/     # Feature modules (circuit, gates, results)
│   │   ├── hooks/        # Custom React hooks
│   │   ├── lib/          # Utilities (QASM parser, API client)
│   │   ├── pages/        # Route pages
│   │   └── stores/       # Zustand state management
│   └── cypress/          # E2E tests
├── packages/qubitkit/    # Python package (PyPI)
└── docs/                 # Documentation

QubitKit Python Package

pip install -i https://test.pypi.org/simple/ qubitkit

License

Apache-2.0 - see LICENSE


Powered by SQUANDER

About

Quantum Unitary Benchmarking and Interactive Toolkit

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors