Skip to main content

Quantum computing toolkit and interface to the TKET compiler

Project description

Pytket is a python module for interfacing with TKET, a quantum computing toolkit and optimising compiler developed by Quantinuum. In addition to pytket there are several pytket extension modules for accessing a range of quantum hardware and classical simulators. The extension modules also allow circuit conversion between several widely used quantum software tools including qiskit, cirq and pennylane.

The source code for the TKET compiler can be found in this github repository.

Installation

Installation is supported for Linux, MacOS and Windows. Installation requires python 3.10, 3.11, 3.12 or 3.13.

To install run the pip command:

pip install pytket

See Installation troubleshooting for help with installation.

To install the pytket extension modules add a hyphen and the extension name to the command:

pip install pytket-quantinuum

For a list of pytket extensions see this page: https://docs.quantinuum.com/tket/api-docs/extensions.

Warning. There is a known issue with installing pytket in a conda environment on MacOS: you may not be able to install versions more recent then 1.11.0. The only known remedy is to use an official Python distribution instead.

Documentation and Examples

API reference: https://docs.quantinuum.com/tket/api-docs/

To get started using pytket see the user guide.

Support and Discussion

For bugs and feature requests we recommend creating an issue on the github repository.

User support: tket-support@quantinuum.com

For discussion, join the public slack channel here.

There is also a pytket tag on quantum computing stack exchange.

Mailing list: join here.

Citation

If you wish to cite TKET in any academic publications, we generally recommend citing our software overview paper for most cases.

If your work is on the topic of specific compilation tasks, it may be more appropriate to cite one of our other papers:

  • "On the qubit routing problem" for qubit placement (a.k.a. allocation) and routing (a.k.a. swap network insertion, connectivity solving). https://arxiv.org/abs/1902.08091 .
  • "Phase Gadget Synthesis for Shallow Circuits" for representing exponentiated Pauli operators in the ZX calculus and their circuit decompositions. https://arxiv.org/abs/1906.01734 .
  • "A Generic Compilation Strategy for the Unitary Coupled Cluster Ansatz" for sequencing of terms in Trotterisation and Pauli diagonalisation. https://arxiv.org/abs/2007.10515 .

Project details


Release history Release notifications | RSS feed

This version

2.0.1

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

pytket-2.0.1-cp313-cp313-win_amd64.whl (8.6 MB view details)

Uploaded CPython 3.13Windows x86-64

pytket-2.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.3 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pytket-2.0.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.7 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

pytket-2.0.1-cp313-cp313-macosx_13_0_x86_64.whl (7.0 MB view details)

Uploaded CPython 3.13macOS 13.0+ x86-64

pytket-2.0.1-cp313-cp313-macosx_13_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.13macOS 13.0+ ARM64

pytket-2.0.1-cp312-cp312-win_amd64.whl (8.6 MB view details)

Uploaded CPython 3.12Windows x86-64

pytket-2.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.3 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pytket-2.0.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.7 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

pytket-2.0.1-cp312-cp312-macosx_13_0_x86_64.whl (7.0 MB view details)

Uploaded CPython 3.12macOS 13.0+ x86-64

pytket-2.0.1-cp312-cp312-macosx_13_0_arm64.whl (6.3 MB view details)

Uploaded CPython 3.12macOS 13.0+ ARM64

pytket-2.0.1-cp311-cp311-win_amd64.whl (8.6 MB view details)

Uploaded CPython 3.11Windows x86-64

pytket-2.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.3 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pytket-2.0.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.7 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

pytket-2.0.1-cp311-cp311-macosx_13_0_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.11macOS 13.0+ x86-64

pytket-2.0.1-cp311-cp311-macosx_13_0_arm64.whl (6.1 MB view details)

Uploaded CPython 3.11macOS 13.0+ ARM64

pytket-2.0.1-cp310-cp310-win_amd64.whl (8.6 MB view details)

Uploaded CPython 3.10Windows x86-64

pytket-2.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl (8.3 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ x86-64manylinux: glibc 2.28+ x86-64

pytket-2.0.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl (7.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.27+ ARM64manylinux: glibc 2.28+ ARM64

pytket-2.0.1-cp310-cp310-macosx_13_0_x86_64.whl (6.8 MB view details)

Uploaded CPython 3.10macOS 13.0+ x86-64

pytket-2.0.1-cp310-cp310-macosx_13_0_arm64.whl (6.1 MB view details)

Uploaded CPython 3.10macOS 13.0+ ARM64

File details

Details for the file pytket-2.0.1-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: pytket-2.0.1-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 8.6 MB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pytket-2.0.1-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 7b1becfaef4ec7fa8cebf0d6c1013b76f685c12f20b697ec3a780430433ead3b
MD5 69db4e322edf11876b2997bfeb5c7335
BLAKE2b-256 416cd29f590d9b5f5976a33f5245f570ae03c5b29e380da2956971f6fe5102bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp313-cp313-win_amd64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 54d2c188e6d278fc51174d3a326801d8184ae1bd2d4674f5a7f090dccd7189d8
MD5 1471721bca68bcb7098f0e66868fafcc
BLAKE2b-256 00c056e632b2145e970638a0637773931179ccec8cbe69b87032bbc9d52be18a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 e35f34e9edfa4276c7c28b040dc0b8495602d23c0d8b5b5ce7f3db57874ce52a
MD5 1a52a0853967908c8e76d980c6aabca8
BLAKE2b-256 5d409d7d63dafa51d8fe55e7e06d83c3b0e6167b7167742a03fa35249b513bf1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp313-cp313-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp313-cp313-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 e7df03b59257e02b5011a03ca475523e2a670d745e65cf526ca1bab0dad5b44f
MD5 90841fd9e6e07621ec8b4c85fbfd34e3
BLAKE2b-256 2450578762f310abb88ab3b2c1de4aebd1e651925b47b002748193aba070569a

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp313-cp313-macosx_13_0_x86_64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp313-cp313-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp313-cp313-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 a3268b36bc89a1a957228ea68cbc5e54f2e7df4519e0db9dcfc68a7351da89df
MD5 04cae01f1ad9a4f2aa6a153b31e92cb4
BLAKE2b-256 21fa4f69100ea428772e939b1af29e1bb631af75b64c7d08938c02dd223c70a8

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp313-cp313-macosx_13_0_arm64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: pytket-2.0.1-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 8.6 MB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pytket-2.0.1-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 398138ac034ee36089c61d15c4c0f0e591cdd49c321f1cf2b2f9524c03b9576c
MD5 6e884b52a540669cef7cd849615a26d1
BLAKE2b-256 06a1d0f96a96c886a59be0e3b01ffdddbd9f19c8c86c232138e113cb33f30401

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp312-cp312-win_amd64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 0f2c849903abfe3d7ac97406ae74c905d7de0d7d2873e0cb9f30d01e7fcc6788
MD5 f960faa4c32983a83d073e3117fa92bb
BLAKE2b-256 db7885c1b81a990dbaeab184c28c4a1c686b3437f3165fe4a0100d5527dd2185

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4f64e1724827bea3861a3d3cc5129a0839a3db1a8a512547006f3a74fff0f29d
MD5 5d24cd954c933438e9442c28775f9f4e
BLAKE2b-256 294e68d989330947f959d5fa97259f58b98f4f14c8f1f54163dbe8ca9a4d6cdd

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp312-cp312-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp312-cp312-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 9196be3d9bcab3b846db7ad4ec6ffc5147a9aa96706ed5d79061ec45e1e011a4
MD5 d998c38bc504d924afb2de74043562cf
BLAKE2b-256 2400e43c5e8826fc6967f3045d5f305ecd731624050bd485aff65992e15b3848

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp312-cp312-macosx_13_0_x86_64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp312-cp312-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp312-cp312-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 c0dec40ffa3c59ef1921a33e676a4218b34ece8638e07f3eb99356c7bd80dd15
MD5 27dae8f8f13673b3493501144b793aa0
BLAKE2b-256 939c389ecf0d8b5b9610e91558ed67eb60273c9e928084b72587749f5b1e6e42

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp312-cp312-macosx_13_0_arm64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: pytket-2.0.1-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 8.6 MB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pytket-2.0.1-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 f390c8dcfa2ad472a4062be42c46a063a3afbcbffa846844dd6be70c35325e39
MD5 77700c234bf68748b3117075694c66ad
BLAKE2b-256 30c788ca255a13a5deda526fb4d38ca8caf2786cfe3982febec24bd3a338fe42

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp311-cp311-win_amd64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 fadc54cab896b466f9d0ed6ad8caaa3feb1756cbd3158d0acbfb48970841a043
MD5 b83cec365a9f182c8c071f8fdd6cd6c2
BLAKE2b-256 82e9de1f0e88f9d16a588448cd3dbebc271b879d19db8fb5d3a9b9d9c6c367b9

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 bb1a6d6f94169cfa6241cc2ece095f039eddcb1716369e9a31ea5aaf7daf8de1
MD5 97b5a9098069e2bfe3cb2d616857c975
BLAKE2b-256 a317413ff7916f30797b3ea9ab56585b021600e91e340fefeff5955401ad2eff

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp311-cp311-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp311-cp311-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 47ca04adb4ed44a94745b03faa40bc4b72b1885ff7ac5db5c8937333fee9f341
MD5 78e397c42a1b8be3c61a62495e67a6ba
BLAKE2b-256 6c4a5a3d8ce6bd1785bf3e87a2e7c108bcd8b764306babd0fe35e7e306eabf53

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp311-cp311-macosx_13_0_x86_64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp311-cp311-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp311-cp311-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 918b07a346313629d998433e85a4205cb046e5c78a504e1623b1067376a2afab
MD5 2284d90c40d845b8501b501280c82249
BLAKE2b-256 713b0eea8966922029383c6d3facab81af9a68e1fae82fd49ec4dc209fbb3d54

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp311-cp311-macosx_13_0_arm64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: pytket-2.0.1-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 8.6 MB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for pytket-2.0.1-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 492d2a0723d812dc8f8ade61a690cf91ab04ca08760a58c688a97a49667965b6
MD5 ae495a3e06887a1c62c48f1086fedb35
BLAKE2b-256 6ed149c1508d1b2333db3ea27801ff277ffbc77eee9ec31cabf92bbc0c9734cf

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp310-cp310-win_amd64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 89aae6fb0b84fd983b4a1b36a734de7331b30775b515c3c56463858cdac21fb4
MD5 09fb1db66dfc36446a612b0851975a0b
BLAKE2b-256 54d457dc8b4e0fec7d93f9e781bfe5a282b2b45bae516a22009cd9163ceb5b7c

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl
Algorithm Hash digest
SHA256 4876f1a08e6b8fc0c9d9d17c774f2381433adb7c500b844feca665492da39830
MD5 ed4567e4e43a51ff983d8cac10b9c975
BLAKE2b-256 f118021fac1278d088beef5ad3f7f5da76cea2ae982be2adb476b6f84736ae57

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp310-cp310-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp310-cp310-macosx_13_0_x86_64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp310-cp310-macosx_13_0_x86_64.whl
Algorithm Hash digest
SHA256 7887e4c6d8713b1f6e9008d5d8873f06d603404b1db4a49f97dc7d29cca305a2
MD5 368f12e0d239f416fc6330ab1deb7b83
BLAKE2b-256 4864651a8daf5decf6e19157dd7aa0a54b7be99f294716bcce87d55e5df9c5c1

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp310-cp310-macosx_13_0_x86_64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file pytket-2.0.1-cp310-cp310-macosx_13_0_arm64.whl.

File metadata

File hashes

Hashes for pytket-2.0.1-cp310-cp310-macosx_13_0_arm64.whl
Algorithm Hash digest
SHA256 d2991c289132ac159b8b6ca9dba1902b354f7502f94daeaef0cf2d63755e7eac
MD5 b59527d0c860d5037df8031dd99821ab
BLAKE2b-256 d8e77c1f14b486fdf4d83c210302b66637634495a8ca5a0645b8f1c7c0731a6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for pytket-2.0.1-cp310-cp310-macosx_13_0_arm64.whl:

Publisher: release.yml on CQCL/tket

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page