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

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

Download URL pytonium-0.0.35-cp314-cp314-win_amd64.whl
Size 171.2 MB
Tags CPython 3.14 Windows x86-64
SHA-256 checksum
How to use checksums
294c7c92086377e19c3ce98bc939bbd4465921a1b9d97a318d98ddfe05310847
BLAKE2b-256 checksum
How to use checksums
691bf8c6bb71bffaee4549b97961e009d658fe988e67090efca85365adc20ed3
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.35-cp314-cp314-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.35-cp314-cp314-manylinux_2_39_x86_64.whl
Size 147.5 MB
Tags CPython 3.14 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
c70aedfc36ed5e3555c2122b301e99120527cdc922eea4a4bdfa8dd5b0eda83a
BLAKE2b-256 checksum
How to use checksums
1d48a898fb185cef4de2ea5615b1a79e881dd362765735df124f63029cbf1f18
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.35-cp313-cp313-win_amd64.whl

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

Download URL pytonium-0.0.35-cp313-cp313-manylinux_2_39_x86_64.whl
Size 147.5 MB
Tags CPython 3.13 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
41741411b5de211175baf3e5faaa6291676966072ae57d6b21f60f3efc0377ef
BLAKE2b-256 checksum
How to use checksums
e87761b40fdcfc35e4f271e3e3e5ac626776ccb27d8df137b0f6ec1ec9a07acd
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.35-cp312-cp312-win_amd64.whl

Download URL pytonium-0.0.35-cp312-cp312-win_amd64.whl
Size 166.7 MB
Tags CPython 3.12 Windows x86-64
SHA-256 checksum
How to use checksums
146a9a7a74e1dfb3058338584394ff1fe0abcdf32e70e1becea98d62c6f34b95
BLAKE2b-256 checksum
How to use checksums
9670ec34a7ddcb0c73276277807673c67382d7a80a2aca66303a68c214c2f2ce
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.35-cp312-cp312-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.35-cp312-cp312-manylinux_2_39_x86_64.whl
Size 147.5 MB
Tags CPython 3.12 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
8944dc2bf16a28661d6d55d177da59f926a4842cbb4d3112596e5390bdcb43de
BLAKE2b-256 checksum
How to use checksums
fc208821f9327696b68d9ad329a7f37a8b65e5dd997849923d17226b75d5d64a
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.35-cp311-cp311-win_amd64.whl

Download URL pytonium-0.0.35-cp311-cp311-win_amd64.whl
Size 166.7 MB
Tags CPython 3.11 Windows x86-64
SHA-256 checksum
How to use checksums
da2687e9949f44125bda5f9b542dda9aae61bcf4a24d557dd4a79f9e1d05e628
BLAKE2b-256 checksum
How to use checksums
c72373d95a9c97baa924c2394867138bd93a481ddf1a4773220e76e7671f14f4
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.35-cp311-cp311-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.35-cp311-cp311-manylinux_2_39_x86_64.whl
Size 147.5 MB
Tags CPython 3.11 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
1cb3746439c7223edfabfe565b2c9253b0c0647f9306c281aad4871cdcc9272d
BLAKE2b-256 checksum
How to use checksums
dde16109a82f1557c8a715dbb6bee2dbbb885d740a22e85f387b70de2ef07da2
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.35-cp310-cp310-win_amd64.whl

Download URL pytonium-0.0.35-cp310-cp310-win_amd64.whl
Size 166.7 MB
Tags CPython 3.10 Windows x86-64
SHA-256 checksum
How to use checksums
c5994dddb5d95c2c49b603948c19b4a0c35f068ebea3ada5c29e08317a7ef452
BLAKE2b-256 checksum
How to use checksums
6ef1be87c2504728b9eedf9a09b561ee1bbfa82931028b690379e91bd2b1e157
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.35-cp310-cp310-manylinux_2_39_x86_64.whl

Download URL pytonium-0.0.35-cp310-cp310-manylinux_2_39_x86_64.whl
Size 147.5 MB
Tags CPython 3.10 Linux glibc 2.39+ x86-64
SHA-256 checksum
How to use checksums
1fde335216b3e9464cb3d9ac3d9b5db57111c660bea4ff96d1f605026210bfce
BLAKE2b-256 checksum
How to use checksums
4460780071b327ea1f03bab44c105b27f8df4be866de12525ed5a69fc166cc00
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.35 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