Skip to main content

Python redistribution of Deno binaries

Project description

Deno for Python

PyPI version PyPI downloads License

The easiest way to install and use Deno — the modern JavaScript and TypeScript runtime — in your Python projects.

What is Deno?

Deno is a secure runtime for JavaScript and TypeScript that's built on V8, Rust, and Tokio. It features:

  • 🔒 Secure by default - No file, network, or environment access unless explicitly enabled
  • 🚀 TypeScript support - Built-in TypeScript compiler, no configuration needed
  • 📦 Modern module system - Native ES modules with URL imports
  • 🛠️ Built-in tooling - Includes formatter, linter, test runner, bundler, and more
  • 🌐 Web standard APIs - Compatible with browser APIs like fetch, WebSocket, and Web Workers
  • High performance - V8 engine with Rust-powered I/O

Installation

Using pip

pip install deno

Using uv (recommended)

uv add deno

Using poetry

poetry add deno

Usage

Command Line

Run Deno directly using uvx or pipx:

# Check version
uvx deno --version

# Run a script
uvx deno run https://examples.deno.land/hello-world.ts

# Start a REPL
uvx deno

With pipx:

pipx run deno --version

After installing with pip, the deno command is available in your PATH:

deno run --allow-net server.ts

Python API

Use the Python API to integrate Deno into your Python applications:

import deno
import subprocess

# Get the path to the Deno executable
deno_bin = deno.find_deno_bin()

# Run a Deno script from Python
result = subprocess.run(
    [deno_bin, "run", "--allow-net", "script.ts"],
    capture_output=True,
    text=True
)

print(result.stdout)

Example: Running TypeScript from Python

import deno
import subprocess
import tempfile
import os

# Create a temporary TypeScript file
ts_code = """
console.log("Hello from Deno!");
const data = { message: "TypeScript works!" };
console.log(JSON.stringify(data));
"""

with tempfile.NamedTemporaryFile(mode='w', suffix='.ts', delete=False) as f:
    f.write(ts_code)
    ts_file = f.name

try:
    # Execute with Deno
    result = subprocess.run(
        [deno.find_deno_bin(), "run", ts_file],
        capture_output=True,
        text=True
    )
    print(result.stdout)
finally:
    os.unlink(ts_file)

Platform Support

This package provides official Deno binaries for:

Platform Architectures
🍎 macOS x86_64 (Intel), arm64 (Apple Silicon)
🐧 Linux x86_64 (amd64), arm64 (aarch64)
🪟 Windows x86_64 (64-bit)

The appropriate binary for your platform is automatically downloaded and installed.

Common Use Cases

Running Deno Scripts in Python Projects

Integrate JavaScript/TypeScript functionality into your Python applications:

import deno
import subprocess

def run_deno_script(script_path: str, *args):
    """Execute a Deno script with arguments."""
    result = subprocess.run(
        [deno.find_deno_bin(), "run", "--allow-all", script_path, *args],
        capture_output=True,
        text=True
    )
    return result.stdout

output = run_deno_script("./scripts/process-data.ts", "input.json")

Using Deno as a Task Runner

Add Deno scripts to your Python project for tasks like:

  • Frontend asset building
  • API mocking
  • Data processing with TypeScript
  • Testing web APIs

CI/CD Integration

Install Deno in your CI/CD pipelines:

# GitHub Actions example
- name: Install Deno via pip
  run: pip install deno

- name: Run Deno tests
  run: deno test --allow-all

Why Use deno via PyPI?

  • Easy integration - Install Deno alongside Python dependencies
  • Version pinning - Lock Deno versions in requirements.txt or pyproject.toml
  • No manual downloads - Automatic binary management
  • Cross-platform - Works seamlessly across development and production environments
  • Python API - Programmatic access to Deno from Python code

Version Compatibility

The version of this package corresponds to the Deno version it distributes. For example:

  • deno==2.1.0 includes Deno v2.1.0
  • deno==2.0.0 includes Deno v2.0.0

Check the Deno releases for version details.

Resources

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

MIT

This repository redistributes official Deno binaries under the MIT license to make them easily installable via pip, uv, poetry, and other Python package managers.

Project details


Download files

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

Source Distribution

deno-2.9.1.tar.gz (8.2 kB view details)

Uploaded Source

Built Distributions

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

deno-2.9.1-py3-none-win_amd64.whl (41.6 MB view details)

Uploaded Python 3Windows x86-64

deno-2.9.1-py3-none-manylinux_2_27_x86_64.whl (43.9 MB view details)

Uploaded Python 3manylinux: glibc 2.27+ x86-64

deno-2.9.1-py3-none-manylinux_2_27_aarch64.whl (42.0 MB view details)

Uploaded Python 3manylinux: glibc 2.27+ ARM64

deno-2.9.1-py3-none-macosx_11_0_arm64.whl (38.0 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

deno-2.9.1-py3-none-macosx_10_12_x86_64.whl (42.3 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file deno-2.9.1.tar.gz.

File metadata

  • Download URL: deno-2.9.1.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for deno-2.9.1.tar.gz
Algorithm Hash digest
SHA256 6ff26ea8d015f39d907a5f1f2728d0a67de3e52ad79a893daa6c2b6bb774eff8
MD5 c6cb83740dc5182c514bd909e27cc751
BLAKE2b-256 a6109111c76994f96cafc5d3216744fc7498dec91ec5dbc2b21dccb242eb423c

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.9.1.tar.gz:

Publisher: release.yml on denoland/deno_pypi

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

File details

Details for the file deno-2.9.1-py3-none-win_amd64.whl.

File metadata

  • Download URL: deno-2.9.1-py3-none-win_amd64.whl
  • Upload date:
  • Size: 41.6 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for deno-2.9.1-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 1ae3d509073d561b57005b530532f68c8beb19d140cb7d5a18c6066249e1a470
MD5 45d351bb91b3d3fc972afaade14f9fa2
BLAKE2b-256 584c19c6782e7b518f2d6338c54253c372be0628673f9f18fd88956a811f30de

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.9.1-py3-none-win_amd64.whl:

Publisher: release.yml on denoland/deno_pypi

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

File details

Details for the file deno-2.9.1-py3-none-manylinux_2_27_x86_64.whl.

File metadata

  • Download URL: deno-2.9.1-py3-none-manylinux_2_27_x86_64.whl
  • Upload date:
  • Size: 43.9 MB
  • Tags: Python 3, manylinux: glibc 2.27+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for deno-2.9.1-py3-none-manylinux_2_27_x86_64.whl
Algorithm Hash digest
SHA256 c73797b2319a5ac6749a715468ad95ef89a1f5c791499042d38ba0f52ecbe0fb
MD5 11cdc2828e94bc840407be01b82f2d1c
BLAKE2b-256 9655b5cc71d6f41cc2aa3662e25783f4254b9f2f440d5fc3bfcdf07f101b5c66

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.9.1-py3-none-manylinux_2_27_x86_64.whl:

Publisher: release.yml on denoland/deno_pypi

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

File details

Details for the file deno-2.9.1-py3-none-manylinux_2_27_aarch64.whl.

File metadata

File hashes

Hashes for deno-2.9.1-py3-none-manylinux_2_27_aarch64.whl
Algorithm Hash digest
SHA256 5924c9e1c7ae63e1c103412c7a7fbb0d72dc8d5b44ed969c4365b7db29b73cba
MD5 51c1e172856ba448a3cad447f845864e
BLAKE2b-256 5995bc958662607300f290c5d77e7a8f5ba22d59ed8cbe9be4088f46f598f463

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.9.1-py3-none-manylinux_2_27_aarch64.whl:

Publisher: release.yml on denoland/deno_pypi

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

File details

Details for the file deno-2.9.1-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: deno-2.9.1-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 38.0 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for deno-2.9.1-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2093a3caf68b39b5fb6b4ad7a15efe8862a9b8c637467278a5a2beac6f8bde4d
MD5 2c1514d0d6af167606282b0366e85ff9
BLAKE2b-256 932cf36273086056c0cadb607e7024032393627dc9d127bbb151e8fd15afc167

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.9.1-py3-none-macosx_11_0_arm64.whl:

Publisher: release.yml on denoland/deno_pypi

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

File details

Details for the file deno-2.9.1-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: deno-2.9.1-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 42.3 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for deno-2.9.1-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b6dad51f76d2e4c1641b3bb607d74bede6b8b6ee9f3dd8b1843668c9a9242d51
MD5 7bb1ebd56f12bb01420536f129d377f2
BLAKE2b-256 202fe36e8c5fc6a115f80866f891cafabc272cebb3ca5aa5aa0c22ecc8dcda4b

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.9.1-py3-none-macosx_10_12_x86_64.whl:

Publisher: release.yml on denoland/deno_pypi

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