https://github.com/77axel/webra
A Python library that turns web tech into desktop apps
https://github.com/77axel/webra
cef cefpython3 chromium chromium-embedded cross-platform desktop-app desktop-application electron-alternative framework gui html-css-javascript hybrid-app native-app python python-framework python-gui web-technologies webra webview wxpython
Last synced: 15 days ago
JSON representation
A Python library that turns web tech into desktop apps
- Host: GitHub
- URL: https://github.com/77axel/webra
- Owner: 77AXEL
- License: mit
- Created: 2026-01-24T11:23:41.000Z (21 days ago)
- Default Branch: main
- Last Pushed: 2026-01-24T14:30:14.000Z (21 days ago)
- Last Synced: 2026-01-30T03:20:17.102Z (15 days ago)
- Topics: cef, cefpython3, chromium, chromium-embedded, cross-platform, desktop-app, desktop-application, electron-alternative, framework, gui, html-css-javascript, hybrid-app, native-app, python, python-framework, python-gui, web-technologies, webra, webview, wxpython
- Language: Python
- Homepage:
- Size: 802 KB
- Stars: 11
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
---
**Webra** is a Python library that turns web technologies (HTML, CSS, JavaScript) into native desktop applications. It leverages CEF (Chromium Embedded Framework) to render your web content within a customizable window, bridging the gap between web development and desktop app creation.
## Features
- **Web-to-Desktop**: Render any local web application as a desktop app.
- **Modern UI/UX**: Use modern web frameworks (React, Vue, etc.) or vanilla HTML/CSS/JS.
- **Python Integration**: Seamlessly call Python functions from JavaScript.
- **Native Look & Feel**: Customizable window frames, icons, and taskbar integration.
- **Standalone Builds**: Compile your application into a single executable file using `webra build`.
## Installation
You can install Webra directly from GitHub using pip:
```bash
pip install git+https://github.com/77axel/Webra.git
```
## Usage
### 1. Initialize a Project
Create a new Webra project with a sample structure:
```bash
webra init myapp
cd myapp
```
This creates a `myapp` directory with a basic `main.py` and a `src` folder containing your web assets.
* What the default app looks like:
https://github.com/user-attachments/assets/73e8a5cc-f010-4d33-83ce-b54353761d5a
### 2. Configure Your App
Edit `main.py` to configure your application window:
```python
from webra import Webra
app = Webra()
app.configure(
title="My Awesome App",
size=(1024, 768),
src="src",
icon="src/assets/icon.ico" # Optional: Set a custom icon
)
app.run()
```
### 3. Build for Distribution
Compile your application into a standalone executable:
```bash
# Must be run inside your project directory
webra build
```
This uses **Nuitka** to compile your Python code and bundle your assets into a single `.exe` file (on Windows), located in the current directory.
## License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.