Skip to main content

Pytonium

Build Python desktop apps with HTML, CSS, and JavaScript.

Pytonium embeds the Chromium Embedded Framework (CEF 145 / Chromium 145) in Python, giving you the full power of modern web technologies for your desktop application UI.

PyPI Python 3.10+ License: MIT

Install

pip install Pytonium

Quick Start

import time
from Pytonium import Pytonium

p = Pytonium()
p.initialize("https://example.com", 800, 600)

while p.is_running():
    time.sleep(0.01)
    p.update_message_loop()

That's it -- a native desktop window running a full Chromium browser, in 7 lines of Python.

Features

  • Chromium rendering -- Full browser engine for HTML/CSS/JS, use React, Tailwind, or any web framework
  • Python-JS bridge -- Call Python functions from JavaScript, return values via Promises
  • State management -- Shared state between Python and JS with namespace subscriptions and DOM events
  • Custom URL schemes -- Map myapp:// to a local folder for loading HTML, assets, and 3D models
  • Frameless windows -- Build custom window chrome with HTML/CSS, Electron-style
  • Window control -- Position, size, minimize, maximize, fullscreen, drag, native handle access
  • Multi-instance -- Run multiple browser windows in a single process
  • TypeScript definitions -- Auto-generate .d.ts files for IDE auto-completion
  • Async support -- asyncio integration with run_pytonium_async
  • Event callbacks -- React to title changes, URL navigation, and fullscreen state
  • Cross-platform -- Windows 11 and Linux

Example: Python + JavaScript Interop

from Pytonium import Pytonium, returns_value_to_javascript

p = Pytonium()

@returns_value_to_javascript("any")
def get_data():
    return {"answer": 42, "source": "Python"}

p.bind_function_to_javascript(get_data, javascript_object="api")
p.initialize("file:///path/to/index.html", 800, 600)

while p.is_running():
    p.update_message_loop()
// In your HTML/JS -- wait for bindings, then call Python
if (window.PytoniumReady) {
    callPython();
} else {
    window.addEventListener('PytoniumReady', callPython);
}

async function callPython() {
    const result = await Pytonium.api.get_data();
    console.log(result.answer); // 42
}

Examples

Complete examples are included in the pytonium_examples/ directory in this repository:

Example Description
Simple App Bindings, state management, and context menus
Frameless Window Custom HTML/CSS titlebar with window controls
Babylon.js 3D 3D rendering with custom schemes and MIME types
Line Graph Real-time data visualization with state updates
Control Center Dashboard with multiple data panels
Data Studio Interactive data analysis tool

Documentation

Full documentation is available at maximilian-winter.github.io/pytonium, covering:

  • Getting Started -- Installation, quick start, and first app tutorial
  • Guides -- JS bindings, state management, frameless windows, async, and more
  • API Reference -- Complete Pytonium class reference (~35 methods)
  • Examples -- Walkthroughs of each example app
  • Building from Source -- Windows and Linux build instructions

Platform Support

Platform Status
Windows 11 Fully supported
Linux (X11) Fully supported
Python 3.10+ Required (64-bit)

Building from Source

See the Build Guide or how-to-build-from-source.md for detailed instructions.

# Quick version (Windows)
pip install build scikit-build cmake ninja Cython
cmake -B cmake-build-release -DCMAKE_BUILD_TYPE=Release
cmake --build cmake-build-release --target pytonium_subprocess --config Release
cd building_pythonium_core && python prepare_build.py --platform windows --build-dir ../cmake-build-release
cd ../src/pytonium_python_framework && python -m build --wheel
pip install dist/pytonium-*.whl --force-reinstall

License

MIT License -- Pytonium also includes CEF (BSD) and nlohmann/json (MIT).

Metadata

Release files for Pytonium 0.0.33

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distributions (wheels)

Table of built distributions (wheels) for Pytonium 0.0.33
File
pytonium-0.0.33-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
pytonium-0.0.33-cp314-cp314-manylinux_2_39_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.39+ x86-64 Details
pytonium-0.0.33-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
pytonium-0.0.33-cp313-cp313-manylinux_2_39_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.39+ x86-64 Details
pytonium-0.0.33-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
pytonium-0.0.33-cp312-cp312-manylinux_2_39_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ x86-64 Details
pytonium-0.0.33-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
pytonium-0.0.33-cp311-cp311-manylinux_2_39_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ x86-64 Details
pytonium-0.0.33-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
pytonium-0.0.33-cp310-cp310-manylinux_2_39_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.39+ x86-64 Details

Total release size: 1.6 GB

Release files / pytonium-0.0.33-cp314-cp314-win_amd64.whl

Download URL pytonium-0.0.33-cp314-cp314-win_amd64.whl
Size 170.9 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
07b1d095de7190411eaa5b9afc2e76a13cc2668abef32c7fdd2ae2cf42aa7677
BLAKE2b-256 checksum
How to use checksums
cc97316793885a0f169e79eb21bdab844ab43b4c1669527b9b2884a396b7ad61
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.

Transparency log

Release files / pytonium-0.0.33-cp314-cp314-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.33-cp314-cp314-manylinux_2_39_x86_64.whl
Size 147.4 MB
Tags CPython 3.14 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
83d78bd1e1af796a23c0fa489bdc2235512c3172bd940c488d3f3cf2dc2828ed
BLAKE2b-256 checksum
How to use checksums
376cf4c5a467fdfc76fb09830cab6fb8d452cafefca138bc2ae7369c71ba7bef
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.

Transparency log

Release files / pytonium-0.0.33-cp313-cp313-win_amd64.whl

Download URL pytonium-0.0.33-cp313-cp313-win_amd64.whl
Size 166.4 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
4545f669d830a5e1dbedbf4cc1cb9892729b6f0a028ff5dedd3131017473ac60
BLAKE2b-256 checksum
How to use checksums
8b4e51be74d3f38c60f21bb2e33c863c6e1cbc7c485423d92b94cf63d3b3b5ae
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.

Transparency log

Release files / pytonium-0.0.33-cp313-cp313-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.33-cp313-cp313-manylinux_2_39_x86_64.whl
Size 147.4 MB
Tags CPython 3.13 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
6deeeefcbe155047b36829718e439b688953ab470fa93d17a1303c352a5e1894
BLAKE2b-256 checksum
How to use checksums
4799472cc3d26b3d2b49f9deb5fdb47ff3da4ced1dee39d96de71fcf90a73ea6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.

Transparency log

Release files / pytonium-0.0.33-cp312-cp312-win_amd64.whl

Download URL pytonium-0.0.33-cp312-cp312-win_amd64.whl
Size 166.4 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
6a21bb688369338cff8353a061e851a436ad0cbe40ccab1d657b87697af9bf0d
BLAKE2b-256 checksum
How to use checksums
c6ae8ce3d8b6e6579c78167caeb0c3c40f36d6de2fb13a761971a6d6a574731d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.

Transparency log

Release files / pytonium-0.0.33-cp312-cp312-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.33-cp312-cp312-manylinux_2_39_x86_64.whl
Size 147.4 MB
Tags CPython 3.12 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
f04c2c72b389fa767a8f8c4061d227a075743c9d9c6cad0a3ddde48700fdfeae
BLAKE2b-256 checksum
How to use checksums
eb3e8522821ea1e66633aab792ae42b97c8ddd63cbdc6189b49e5051986ab41c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.

Transparency log

Release files / pytonium-0.0.33-cp311-cp311-win_amd64.whl

Download URL pytonium-0.0.33-cp311-cp311-win_amd64.whl
Size 166.4 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
c696324814cbf8f76c2908f5e9fc81b47dabf4b64d991664e15e92cfd0416aba
BLAKE2b-256 checksum
How to use checksums
75fb2308f599f1d0dd9f8a91dfe56c93703741d582c00a52154f11438a5555df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.

Transparency log

Release files / pytonium-0.0.33-cp311-cp311-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.33-cp311-cp311-manylinux_2_39_x86_64.whl
Size 147.4 MB
Tags CPython 3.11 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
eb8b8da0bea59b67b29e7c053877bcac6f6f3467d9b440f6036b2b755e33b530
BLAKE2b-256 checksum
How to use checksums
5e07c7b9f5432e4a5ca2d9d0c7cf97fca084346d9888be57ec95241dca30de50
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.

Transparency log

Release files / pytonium-0.0.33-cp310-cp310-win_amd64.whl

Download URL pytonium-0.0.33-cp310-cp310-win_amd64.whl
Size 166.5 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
e2d385a8ff27bdee47fa2341bdd2950b7e39f04ed566fb147ed54084b00ee02b
BLAKE2b-256 checksum
How to use checksums
89810ef2fd3dd177104177d05e1f6d5db390700bcef3ae0dc6a2a9af0ceb9f74
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.

Transparency log

Release files / pytonium-0.0.33-cp310-cp310-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.33-cp310-cp310-manylinux_2_39_x86_64.whl
Size 147.4 MB
Tags CPython 3.10 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
47c07cf344614cc24f2084c54b819e4a9ba11728196f901e9dfc53f3819e3d0c
BLAKE2b-256 checksum
How to use checksums
2c6a786324b0376b88da377d64e927144788ce00915e65e8d22606d4abf50206
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 17, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.0.33 This release

10 release files

0.0.12

2 release files

0.0.11

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page