Skip to content

A beginner-friendly FastAPI service to explore and run quantum algorithms using Qiskit. Learn quantum computing by doing real, hands-on projects.

License

Notifications You must be signed in to change notification settings

ZakisCodes/Qatalyst

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Qatalyst: Quantum Algorithm API Hub 🚀

Welcome to Qatalyst! If you're curious about quantum computing but not sure where to start, you're in the right place. Qatalyst is my little playground where I'm learning by building, bringing together some of the most interesting quantum algorithms and making them available as simple FastAPI endpoints. The idea is to help people (like you and me) explore how these algorithms work, what they can do, and how they might actually solve problems beyond just theory. Whether you're just dipping your toes into the quantum world or already neck-deep in qubits, I hope this project helps you learn something new and maybe even inspires you to build your own thing.

✨ Why Qatalyst?

  • Learn by Doing: Dive into practical implementations of classic quantum algorithms.
  • Modular & Extensible: Pick and choose which algorithms you want to play with via simple API calls.
  • Hands-On Applications: See the power of quantum computing in action, from search problems to optimization.

🔌 Tech Stack

  • FastAPI: Lightning-fast Python web framework for building APIs.
  • Qiskit: IBM’s open-source SDK for working with quantum circuits and simulators.
  • **Future Frontend **: HTML, CSS, JavaScript—coming soon if you’d like a more interactive UI!

📦 Project Structure

qatalyst/
├── src/
│   └── quantum_algorithms/
│       ├── __init__.py
│       ├── main.py                    # FastAPI app entry
│       ├── routers/
│       │   ├── __init__.py
│       │   └── qiskit_routers.py      # Endpoint routes
│       ├── grovers.py                 # Quantum algorithm modules
│       ├── deutsh_jozsa.py
│       ├── qaoa.py
│       └── utils/                     # utility functions
│           └── circuit_builder.py
├── tests/
│   ├── grovers_test.ipynb            # Jupyter-based demo/test notebooks
│   └── qaoa_test.ipynb
├── requirements.txt                  # Project dependencies
├── README.md                         # Project description
├── .env                              # For secrets/config
├── .gitignore
└── LICENSE                           # MIT license

🚀 Getting Started

  1. Clone the repo

    git clone https://github.com/ZakisCodes/Qatalyst.git
    cd Qatalyst
  2. Install dependencies

    pip install -r requirements.txt
  3. Run the server

    fastapi dev src
  4. Explore the endpoints

    • POST /grover → run Grover’s search
    • POST /deutsch-jozsa → test if a function is constant or balanced
    • …and more! Check /docs for the full list.

🧑‍🤝‍🧑 Contributing & Community

I’d love for you to join in:

  • Fork & Clone: Make the project your own—add new algorithms, polish docs, or improve tests.
  • Open Issues: Found a bug? Have a feature request? Drop an issue and let’s chat.
  • Start Discussions: Curious about quantum concepts or best practices? Start a discussion!

Contribution guide and code of conduct coming soon—stay tuned.

📜 License

This project is open-source under the MIT License. Feel free to copy, modify, and share!


Happy exploring, and may your qubits stay coherent! 🌀

About

A beginner-friendly FastAPI service to explore and run quantum algorithms using Qiskit. Learn quantum computing by doing real, hands-on projects.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published