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.34

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.34
File
pytonium-0.0.34-cp314-cp314-win_amd64.whl CPython 3.14 CPython 3.14 Windows x86-64 Details
pytonium-0.0.34-cp314-cp314-manylinux_2_39_x86_64.whl CPython 3.14 CPython 3.14 Linux glibc 2.39+ x86-64 Details
pytonium-0.0.34-cp313-cp313-win_amd64.whl CPython 3.13 CPython 3.13 Windows x86-64 Details
pytonium-0.0.34-cp313-cp313-manylinux_2_39_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.39+ x86-64 Details
pytonium-0.0.34-cp312-cp312-win_amd64.whl CPython 3.12 CPython 3.12 Windows x86-64 Details
pytonium-0.0.34-cp312-cp312-manylinux_2_39_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.39+ x86-64 Details
pytonium-0.0.34-cp311-cp311-win_amd64.whl CPython 3.11 CPython 3.11 Windows x86-64 Details
pytonium-0.0.34-cp311-cp311-manylinux_2_39_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.39+ x86-64 Details
pytonium-0.0.34-cp310-cp310-win_amd64.whl CPython 3.10 CPython 3.10 Windows x86-64 Details
pytonium-0.0.34-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.34-cp314-cp314-win_amd64.whl

Download URL pytonium-0.0.34-cp314-cp314-win_amd64.whl
Size 171.2 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
0ea7ed26261e38d66a96d15a425ff80bb45fe1eadccc656d10b6d5ecf51d198f
BLAKE2b-256 checksum
How to use checksums
6fffb9f8b5c94668d26cfb1b04daaaa27f3922e9283e164de6e98f4833d3cd5f
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.34-cp314-cp314-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.34-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
c949690012b4e7afed3992e893dd930f33f70ab0ec313b23eb13506db0032913
BLAKE2b-256 checksum
How to use checksums
10e328dedc4ad89a5c7d58f9901e2ac761ee03e0bb789415a364fe6ad08e4b99
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.34-cp313-cp313-win_amd64.whl

Download URL pytonium-0.0.34-cp313-cp313-win_amd64.whl
Size 166.7 MB
Tags CPython 3.13 Windows x86-64
SHA-256 checksum
How to use checksums
c2950e1bd6774f5fe263a089145ba2a5dacd2d644b7cd5fc768e27ef7d463aa9
BLAKE2b-256 checksum
How to use checksums
c22aceb55d4c14883bc531941f6deaa67aba4e4a926b04f2eba2eacf5de10890
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.34-cp313-cp313-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.34-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
6d56533ff08ca333bbb2feabb7a8d151ca810cad29f5e079d7b0378fe4cdde86
BLAKE2b-256 checksum
How to use checksums
de528466a8d947915f5a6cd19c2cf10ebda8b70a8c115cd1754bed0533ce2e06
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.34-cp312-cp312-win_amd64.whl

Download URL pytonium-0.0.34-cp312-cp312-win_amd64.whl
Size 166.7 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
81d8e5780829c837597b6bb0bf1fbd7401f75c9b16cbe699f68af8d6a732d5e0
BLAKE2b-256 checksum
How to use checksums
a1de5a3e8871d9ff34008488e89b9ddc818953c1fc42c233be8f55f7178b2b58
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.34-cp312-cp312-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.34-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
83c8a90fad32392b6738fd0cef5c5bc452375f4313da293ea3e7a3436dfae2f8
BLAKE2b-256 checksum
How to use checksums
d30da1347d08dcffe04cad1ed120694f0693161084a6123f7187f88d96ff75c2
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.34-cp311-cp311-win_amd64.whl

Download URL pytonium-0.0.34-cp311-cp311-win_amd64.whl
Size 166.7 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
3c0a4bac571b73c4d27712c352938cc49a7c016c8a2b8070c54914312c541fc4
BLAKE2b-256 checksum
How to use checksums
e60877c983f7def895a93db572fe1fbba08b089aee9380234a3a199f87561557
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.34-cp311-cp311-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.34-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
eda5d075c3ab7c7118edb3dbac4432239e3f7d32fee7fc8b9b46bd4ef8a0d441
BLAKE2b-256 checksum
How to use checksums
7592b57d77056d850cf27ccbc4519e91d1840ce085c6d0bda019f84e95479c86
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.34-cp310-cp310-win_amd64.whl

Download URL pytonium-0.0.34-cp310-cp310-win_amd64.whl
Size 166.7 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
f033fdf5139d609b9b8f39b9aeacc433418224eacbdfb16376e73664b8e74496
BLAKE2b-256 checksum
How to use checksums
0ea26d60ae428076c697d5f880f60887f51f49f273d05a5a6d1b98b9d36a3358
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.34-cp310-cp310-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.34-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
ab706a61a171d5000cc945af679f3dccbc609df9a813d706fc919bf177630902
BLAKE2b-256 checksum
How to use checksums
ea7110846a0bb5fd8a1c10737a87d4835706b8b73ff0b4b868ec4cf3108884e7
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.34 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