Skip Navigation

Q# and the Quantum Development Kit

All the tools you need to develop quantum applications and formulate optimisation problems

The development kit for quantum computing

The open-source Quantum Development Kit for Azure Quantum enables you to develop durable quantum applications for quantum hardware today and for scalable hardware in the future. Optimisation is a class of problems whose solutions are primary candidates for running on scalable quantum computers. The Quantum Development Kit also offers tools to formulate optimisation problems to run on large-scale or hardware-accelerated compute resources in Azure.

Q#: High level programming language that allows you to focus your programming at the algorithm level

Quantum computing simulator and resource estimator that provides real world costs to run your solutions

Ready-to-use libraries and samples for arithmetic, chemistry and machine learning developed by industry experts

Optimization solvers inspired by quantum research that run on classical and accelerated compute resources in the cloud

Develop quantum applications to run in various environments

The Quantum Development Kit is the development kit for Azure Quantum. Build and run quantum applications using Q#, Qiskit, or Cirq to run on quantum hardware, or formulate solutions that execute optimization solvers running on classical hardware on Azure.

Learn more about quantum computing and optimization

Run complex quantum operations with Q#

Q#, a high-level quantum-focused programming language from Microsoft, offers an intuitive and modern approach to quantum program development. Use it to focus your work at the algorithmic and application level to create quantum programs.

Learn More

Develop with familiar tools

The Quantum Development Kit includes feature-rich integration with Visual Studio, Visual Studio Code, and Jupyter Notebooks. Use the Q# programming language on its own, in notebooks, and at the command line, or use a host language with both Python and .NET interoperability. Integrate your existing quantum workflows with support for Qiskit and Cirq. Formulate optimization solutions with the Azure Quantum optimization Python package.

Get started

Learn quantum computing today

Build your quantum computing skills with comprehensive learning resources. Explore the fundamental concepts of quantum computing and learn to build basic quantum programs through learning modules and self-paced quantum computing tutorials.

Start learning

Contribute to the Quantum Development Kit

Collaborate with an emerging community of quantum programmers working on the open-source Quantum Development Kit in GitHub. Help an expanding community of developers to use Q# to deliver exciting new solutions and tackle complex problems with Q# libraries for arithmetic, chemistry and machine learning.

Frequently asked questions about Q# and the Quantum Development Kit

  • Quantum computing harnesses quantum mechanics to enable computation. Optimisation is a class of computing problems that are primary candidates for running on quantum computers in the future, providing a quantum advantage over classical solutions. We can already accelerate optimisation problems using Azure Quantum solvers that run on classical hardware in Azure today faster than many other classical optimisation techniques. Learn more.
  • Yes. The Quantum Development Kit is an open-source development kit that you can install on your laptop or other classical computers to simulate the computation of Q# programs on a small number of qubits. The number of qubits simulated depends on the memory size available. You can also run Q# code in web hosted Jupyter Notebooks or with GitHub Codespaces without installing anything on your computer. You do need an Azure subscription, however, to run Q# programs on quantum hardware with Azure Quantum. Learn how to set up the Quantum Development Kit.
  • Great question! There are a few ways you can get involved. You can get started with Azure Quantum and the QDK. Start your own learning journey by learning about quantum computing, optimisation, Q#, Azure Quantum and the QDK. Engage with Microsoft Quantum Network partners and startups. Join our growing community of contributors to the Quantum Development Kit open-source platform. And get notified about upcoming events for quantum computing and optimisation.
  • No. If you’d prefer not to install the Quantum Development Kit locally, you can use it online or use a Docker image. You can also run quantum code in web-hosted Jupyter Notebooks or with GitHub Codespaces without installing anything on your computer. To develop Q# programs with Visual Studio or Visual Studio Code, install the Quantum Development Kit with the extensions for those development environments. Learn about all the ways you can use the Quantum Development Kit.
  • If you’re already using Python-based Qiskit and Cirq, you can easily get started with Azure Quantum and submit circuits using those frameworks. Learn more about developing with Qiskit and Cirq. In addition, Q# works great on its own or used with other languages like Python or C#. You can develop Python host programs that call Q# operations. Your Python code is just a normal Python program. You can use any Python environment, including Python-based Jupyter Notebooks, to write the Python program and call Q# operations. Learn more about developing with Q# and Python.
  • Q# grew out of a need to develop, compile, and run algorithms on both small-scale NISQ quantum hardware and future large-scale quantum computers. Q# is a modern quantum-focused programming language that enables productive development of large numbers of complex applications, not just simple quantum circuits. Quantum programs developed with Q# are durable across evolving quantum hardware platforms. Learn more about why we need Q#.

Get started with the Quantum Development Kit

Get started