{"id":33897185,"url":"https://github.com/parawanderer/quantumcircuitdesigner","last_synced_at":"2026-05-29T12:01:48.501Z","repository":{"id":284628624,"uuid":"955559228","full_name":"parawanderer/QuantumCircuitDesigner","owner":"parawanderer","description":"Interactive quantum circuit simulator","archived":false,"fork":false,"pushed_at":"2026-03-08T00:25:54.000Z","size":2450,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-03-08T06:24:00.954Z","etag":null,"topics":["diagrams-as-code","mathematics","numpy","quantum-computing","tkinter-gui"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/parawanderer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-26T20:39:30.000Z","updated_at":"2026-03-08T00:25:57.000Z","dependencies_parsed_at":"2025-03-26T21:34:29.972Z","dependency_job_id":"011e4c3e-3163-4088-8fba-74d367625ab1","html_url":"https://github.com/parawanderer/QuantumCircuitDesigner","commit_stats":null,"previous_names":["parawanderer/quantumcircuitdesigner"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/parawanderer/QuantumCircuitDesigner","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parawanderer%2FQuantumCircuitDesigner","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parawanderer%2FQuantumCircuitDesigner/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parawanderer%2FQuantumCircuitDesigner/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parawanderer%2FQuantumCircuitDesigner/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/parawanderer","download_url":"https://codeload.github.com/parawanderer/QuantumCircuitDesigner/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/parawanderer%2FQuantumCircuitDesigner/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33650712,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-05-29T02:00:06.066Z","response_time":107,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["diagrams-as-code","mathematics","numpy","quantum-computing","tkinter-gui"],"created_at":"2025-12-11T19:05:04.279Z","updated_at":"2026-05-29T12:01:48.495Z","avatar_url":"https://github.com/parawanderer.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Quantum Circuit Designer \u0026 Simulator\n\n![Quantum Circuit Designer UI screenshot](./assets/screenshot_09_04_2024.png)\n\n\nAn interactive, purely functional quantum circuit prototyping tool and simulation backend built for real-world physics lab environments (specifically targeting NV-center qubit experiments).\n\n## System Architecture\nUnlike standard educational visualizers, this tool was engineered to compute the underlying linear algebra of quantum state evolution, providing a robust bridge between high-level circuit design and low-level matrix mechanics.\n\n* **Unitary Transformation Engine:** Dynamically compiles sequential and concurrent gate applications into system-level unitary matrices ($U^\\dagger U = I$), ensuring strict adherence to the normalization constraint across deep circuits.\n* **Pure State Simulation Backend:** Executes state-vector propagation for multi-qubit systems, natively handling entanglement (e.g., Bell State generation) and interference.\n* **Dynamic Controlled Operations:** Implements algorithmic decomposition for $n$-qubit controlled gates, computing $M_{q_j=|0\\rangle}$ and $M_{q_j=|1\\rangle}$ conditionally to apply transformations without rank-collapse.\n\n## Extensibility: The NISQ Roadmap\nThe core engine was architected with a modular state-representation layer. While currently optimized for pure-state vectors ($|\\psi\\rangle$), the data structures are designed to be extended into the **Density Matrix ($\\rho$)** formalism to support:\n* **Mixed-State Evolution**\n* **Kraus Operator / Decoherence Modeling**\n* **Custom Pulse-Level Control Sequences**\n\n## Tech Stack\n* **Language:** Python 3 (Scientific Stack)\n* **Design Pattern:** Decoupled interactive GUI / Mathematical Backend\n\n-----------------------------\n\n### Installation (Development)\n\n#### Requirements\n1. A local installation of [Python 3.11](https://www.python.org/downloads/)+ \u0026 `pip` package manager\n2. `pip` install the dependencies in [`./src/requirements.txt`](./src/requirements.txt).\n    - E.g. follow [this VSCode guide](https://code.visualstudio.com/docs/python/environments#_create-a-virtual-environment-in-the-terminal) which includes command-line-only instructions.\n    - Or use an editor with support like [Visual Studio Code](https://code.visualstudio.com/Download) with Python extensions or [PyCharm](https://www.jetbrains.com/pycharm/)\n3. Download [Ghostscript](https://ghostscript.com/releases/gsdnld.html) and add to your `PATH` to enable exporting circuits to images from the UI\n4. Run the UI using your IDE/editor or from the root dir from the command line:\n```shell\npython ./src/ui/main.py\n```\n\nThe above set of instructions is verified to work with:\n- `.venv` and Visual Studio Code \"run\" button\n- PyCharm\n- `.venv` and running the UI from the command line\n\n-----------------\n\n### Credits\n\n##### \"play\"/\"pause\"/\"stop\" icons UI (modified assets):\nVectors and icons by [Catalin Fertu](https://dribbble.com/catalinfertu?ref=svgrepo.com) (\"Bigmug Interface Icons\") in CC Attribution License via [SVG Repo](https://www.svgrepo.com/)\n\n##### \"measure\" icon in UI (modified assets):\nDesigned by [Freepik](www.freepik.com) (CC Attribution License)\n\n-----------------\n\n## WIP:\n\n\n- More tests\n\nPotential problems that are not necessarily real problems:\n\n- Documentation for the gates (on hover in the toolbar) are placeholders\n  - Intended as of right now\n\n### Downloads\n\nTODO: make some .exes for windows and mac (and linux while we are at it).","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparawanderer%2Fquantumcircuitdesigner","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fparawanderer%2Fquantumcircuitdesigner","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fparawanderer%2Fquantumcircuitdesigner/lists"}