Metadata-Version: 2.4
Name: quantum-starter-lab
Version: 0.1.3
Summary: A beginner-friendly Python layer for running and visualizing introductory quantum demos.
Author-email: Pranava-Kumar <pranavakumar.it@gmail.com>
License: Apache-2.0
Project-URL: Homepage, https://github.com/Pranava-Kumar/quantum-starter-lab
Project-URL: Repository, https://github.com/Pranava-Kumar/quantum-starter-lab
Project-URL: Bug Tracker, https://github.com/Pranava-Kumar/quantum-starter-lab/issues
Keywords: quantum computing,qiskit,education,quantum algorithms
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Education
Classifier: Topic :: Scientific/Engineering
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: qiskit==1.1.1
Requires-Dist: qiskit-aer==0.14.1
Requires-Dist: matplotlib>=3.8.0
Requires-Dist: numpy>=1.26.0
Provides-Extra: cirq
Requires-Dist: cirq>=1.4.0; extra == "cirq"
Provides-Extra: dev
Requires-Dist: quantum-starter-lab[cirq]; extra == "dev"
Requires-Dist: pytest; extra == "dev"
Requires-Dist: hypothesis; extra == "dev"
Requires-Dist: ruff; extra == "dev"
Requires-Dist: black; extra == "dev"
Requires-Dist: mypy; extra == "dev"
Requires-Dist: pre-commit; extra == "dev"
Requires-Dist: coverage; extra == "dev"
Requires-Dist: mkdocs; extra == "dev"
Requires-Dist: mkdocs-material; extra == "dev"
Dynamic: license-file

# quantum-starter-lab

[![PyPI version](https://img.shields.io/pypi/v/quantum-starter-lab.svg)](https://pypi.org/project/quantum-starter-lab/)
[![Python versions](https://img.shields.io/pypi/pyversions/quantum-starter-lab.svg)](https://pypi.org/project/quantum-starter-lab/)
[![License](https://img.shields.io/pypi/l/quantum-starter-lab.svg)](./LICENSE)
[![CI](https://github.com/your-username/quantum-starter-lab/actions/workflows/ci.yml/badge.svg)](https://github.com/your-username/quantum-starter-lab/actions/workflows/ci.yml)

A single, beginner-friendly Python layer that wraps the most common introductory quantum tasks so newcomers can learn and build quickly.

**Created by Pranava Kumar**

---

## Key Features

-   🚀 **One-Line Demos**: Run classic quantum algorithms like Bell's state, Grover's search, and Teleportation with a single function call.
-   🔬 **Intuitive Noise Simulation**: Easily compare ideal results with noisy ones to build an intuition for the challenges of real hardware.
-   📊 **Visual, Explain-First Outputs**: Get beautiful plots and plain-language explanations of "what just happened" with every run.
-   🔄 **Framework-Agnostic**: Start with Qiskit's simulator by default, and switch to Google's Cirq with a single parameter.

## Quick Start

### Installation
Requires Python 3.10 or newer. Install with `uv`:
uv add quantum-starter-lab

### Example Usage
Create and visualize a Bell state with a bit of noise in just a few lines of Python:
from quantum_starter_lab.api import make_bell

Run a Bell state demo with 1% bit-flip noise
results = make_bell(noise_name="bit_flip", p=0.01, seed=42)

Print the simple explanation and counts
print(results)

Show the circuit diagram and histogram plot
results.plot()

## Contributing

Contributions are welcome! Whether it's reporting a bug, suggesting a new feature, or submitting code, your help is valued. Please see our [Contributing Guidelines](./CONTRIBUTING.md) to get started.

## License

This project is licensed under the Apache 2.0 License. See the [LICENSE](./LICENSE) file for details.

## Acknowledgements

This project was created and is maintained by **Pranava Kumar**.
