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.8.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.8.1-py3-none-win_amd64.whl (42.0 MB view details)

Uploaded Python 3Windows x86-64

deno-2.8.1-py3-none-manylinux_2_27_x86_64.whl (46.0 MB view details)

Uploaded Python 3manylinux: glibc 2.27+ x86-64

deno-2.8.1-py3-none-manylinux_2_27_aarch64.whl (43.9 MB view details)

Uploaded Python 3manylinux: glibc 2.27+ ARM64

deno-2.8.1-py3-none-macosx_11_0_arm64.whl (39.5 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

deno-2.8.1-py3-none-macosx_10_12_x86_64.whl (42.7 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

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

File metadata

  • Download URL: deno-2.8.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.8.1.tar.gz
Algorithm Hash digest
SHA256 fb65e568bef30b1a7e63f033713f1a6792a8456e339febdb7d638c6bb2c4c008
MD5 93a77242641bbc784ed65a20e592abcf
BLAKE2b-256 43ebb743a520cdd668e070a4535296123f1c62d054b00699f58e49c32ab5925c

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.8.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.8.1-py3-none-win_amd64.whl.

File metadata

  • Download URL: deno-2.8.1-py3-none-win_amd64.whl
  • Upload date:
  • Size: 42.0 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.8.1-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 71ec55c0a0944beee376aa824722734cf3e617661bca5e143caa83991921e4f5
MD5 6e6c55f2e0f685a4abd3ef79be83a6c9
BLAKE2b-256 14d614f6cf25025644bb8b7d9b4606780b5ec6ee429a55c0d1f05681718c7fc0

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.8.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.8.1-py3-none-manylinux_2_27_x86_64.whl.

File metadata

  • Download URL: deno-2.8.1-py3-none-manylinux_2_27_x86_64.whl
  • Upload date:
  • Size: 46.0 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.8.1-py3-none-manylinux_2_27_x86_64.whl
Algorithm Hash digest
SHA256 f0958910ffa88f6b6e142129ab34b7a3aec361fc63904ff803ce1594beca230a
MD5 6d536e23f0836059951894e6b36a1c3c
BLAKE2b-256 0d1e75b84e7096b53f077ac01f9b5c979b7b42b0a6497f56d7c4ae072381e059

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.8.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.8.1-py3-none-manylinux_2_27_aarch64.whl.

File metadata

File hashes

Hashes for deno-2.8.1-py3-none-manylinux_2_27_aarch64.whl
Algorithm Hash digest
SHA256 91f29a2df4cb6135872d68f38005c08fe0c389c84cb7349d7399eedbfbe19829
MD5 171513499511698e07362f5fa6c927ff
BLAKE2b-256 1a20b50646f865562b8f21532cad6f9804b126efd4030cfd0c5e1d11217b15ca

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.8.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.8.1-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: deno-2.8.1-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 39.5 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.8.1-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7b4638504f3730f9b25229db08d1bce87bc64f52498f9f8f5aeba702c7ff2115
MD5 20c1d16953d380cd636fa0b29e3c2cf4
BLAKE2b-256 f5db1721aca1a9bd132a3f721bd547022534fcdd6221701561c5e33705cdfb6d

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.8.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.8.1-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: deno-2.8.1-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 42.7 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.8.1-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 733e24e4883c9516534cae7a10277048ffea7cc034f9f726e8c145d48ba75d19
MD5 2a4150f062a41cbf2ddf24af0962530b
BLAKE2b-256 d171f9dc8ad874dcc26cf1a154c8f89d77e1155ced1f6a64be9d21127bd555ce

See more details on using hashes here.

Provenance

The following attestation bundles were made for deno-2.8.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