Metadata-Version: 2.5
Name: bloqade-circuit
Version: 0.15.1
Summary: The software development toolkit for neutral atom arrays.
Author-email: Roger-luo <rluo@quera.com>, kaihsin <khwu@quera.com>, weinbe58 <pweinberg@quera.com>, johnzl-777 <jlong@quera.com>
License-File: LICENSE
Requires-Python: >=3.10
Requires-Dist: bloqade-decoders<0.7.0,>=0.4.0
Requires-Dist: kirin-toolchain~=0.22.11
Requires-Dist: numpy>=1.22.0
Requires-Dist: pandas>=2.2.3
Requires-Dist: pydantic<2.11.0,>=1.3.0
Requires-Dist: pyqrack-cpu~=1.70
Requires-Dist: rich>=13.9.4
Requires-Dist: scipy>=1.13.1
Provides-Extra: cirq
Requires-Dist: cirq-core>=1.4.1; extra == 'cirq'
Requires-Dist: cirq-core[contrib]>=1.4.1; extra == 'cirq'
Requires-Dist: numba>=0.63.1; extra == 'cirq'
Provides-Extra: cirq-parallelize
Requires-Dist: qpsolvers[clarabel]>=4.7.0; extra == 'cirq-parallelize'
Provides-Extra: pyqrack-cuda
Requires-Dist: pyqrack-cuda>=1.70.4; extra == 'pyqrack-cuda'
Provides-Extra: pyqrack-opencl
Requires-Dist: pyqrack>=1.70.4; extra == 'pyqrack-opencl'
Provides-Extra: qasm2
Requires-Dist: lark>=1.2.2; extra == 'qasm2'
Provides-Extra: qasm3
Requires-Dist: lark>=1.2.2; extra == 'qasm3'
Requires-Dist: openqasm3[all]~=1.0.1; extra == 'qasm3'
Provides-Extra: qbraid
Requires-Dist: qbraid>=0.9.3; extra == 'qbraid'
Provides-Extra: stim
Requires-Dist: stim>=1.15.0; extra == 'stim'
Provides-Extra: tsim
Requires-Dist: bloqade-tsim>=0.1.0; extra == 'tsim'
Provides-Extra: vis
Requires-Dist: ffmpeg>=1.4; extra == 'vis'
Requires-Dist: matplotlib>=3.9.2; extra == 'vis'
Requires-Dist: pyqt5>=5.15.11; (sys_platform == 'darwin') and extra == 'vis'
Requires-Dist: pyqt5>=5.15.11; (sys_platform == 'linux') and extra == 'vis'
Requires-Dist: tqdm>=4.66.5; extra == 'vis'
Description-Content-Type: text/markdown

# Welcome to Bloqade Circuit -- A component package of QuEra's Neutral Atom SDK

[![CI](https://github.com/QuEraComputing/bloqade-circuit/actions/workflows/ci.yml/badge.svg)](https://github.com/QuEraComputing/bloqade-circuit/actions/workflows/ci.yml)
[![codecov](https://codecov.io/gh/QuEraComputing/bloqade-circuit/graph/badge.svg?token=BpHsAYuzdo)](https://codecov.io/gh/QuEraComputing/bloqade-circuit)
[![Supported Python versions](https://img.shields.io/pypi/pyversions/bloqade-circuit.svg?color=%2334D058)](https://pypi.org/project/bloqade-circuit)
[![Documentation](https://img.shields.io/badge/Documentation-6437FF)](https://bloqade.quera.com/)
[![DOI](https://zenodo.org/badge/629628885.svg)](https://zenodo.org/doi/10.5281/zenodo.11114109)


Bloqade is a Python SDK for neutral atom quantum computing. It provides a set of embedded domain-specific languages (eDSLs) for programming neutral atom quantum computers. Bloqade is designed to be a high-level, user-friendly SDK that abstracts away the complexities of neutral atom quantum computing, allowing users to focus on developing quantum algorithms and compilation strategies for neutral atom quantum computers.

Bloqade-circuit provides the core components of representing quantum circuits for bloqade.

> [!IMPORTANT]
>
> This project is in the early stage of development. API and features are subject to change.

## Installation

### Install via `uv` (Recommended)

```py
uv add bloqade-circuit
```

## Documentation

The documentation is available at [https://bloqade.quera.com/latest/](https://bloqade.quera.com/latest/). We are at an early stage of completing the documentation with more details and examples, so comments and contributions are most welcome!

## Contributing

We welcome contributions! Please check the [contribution guidelines](https://bloqade.quera.com/latest/contrib/) for a detailed guide.

> [!NOTE]
>
> We welcome contributions that use AI assistance. However, **we ask that first-time contributors do not submit AI-generated PRs**.

## License

Apache License 2.0 with LLVM Exceptions
