Skip to main content

Clera — GUI Development with Python 🐍

PyPI Downloads PyPI Version Python Versions License Platform


Clera is a Python GUI framework that lets you build desktop applications quickly and simply — with a low learning curve and minimal boilerplate.


NOTE: Clera is currently in developer beta. Core features are stable and undergoing broader testing before the full public release. To participate in testing or get help, reach out at eirasmx@pm.me


✦ THE BASICS

Installation

pip install clera

Requires Python 3.7+ and PySide6.


Your First Window

Every Clera application starts with a Window. This is the skeleton of any GUI built with Clera:

from clera import Window

window = Window()
# Add your widgets and layouts here
window.run()

Output:

Window

" Why Complicate Simplicity? "


Adding Widgets

Clera widgets are simple, readable Python objects. Here's a basic example with a label and a button:

from clera import Window, Label, Button, Box

def on_click():
    print("Hello from Clera!")

window = Window()
window.add(
    Box([
        Label("Welcome to Clera 👋"),
        Button("Click Me", func=on_click)
    ])
)
window.run()

Layouts

Use Box for vertical/horizontal stacking and Grid for grid-based arrangements:

from clera import Window, Box, Grid, Label

window = Window()
window.add(
    Grid([
        [Label("A"), Label("B")],
        [Label("C"), Label("D")]
    ])
)
window.run()

Styling

Clera uses a CSS-like styling system with its own tag aliases. You can apply styles inline or link an external .cx stylesheet:

window = Window(style="background: #1e1e1e;")

✦ TOOLS

Clera ships with two built-in command-line tools:

Command Description
clera-editor Launch the Clera Style Editor — itself built with Clera
clera-deploy Package your Clera app into a standalone executable

Run either from your terminal or command prompt after installing Clera.


✦ PLATFORMS

Hardware

  • Desktop and Laptops

OS

  • 🪟 Windows
  • 🍎 macOS
  • 🐧 Linux

📖 Docs: Visit https://clera.readthedocs.io for full documentation and guides.




RELEASE NOTES

v0.3.1 (2026-04-21) - Developer Beta

  • Splitter widget with live resize and collapsible panes (added)
  • TreeView widget with drag-and-drop, branch editing, and sorting (added)
  • SpinBox widget with integer and float modes, prefix and suffix support (added)
  • cursor() element with custom image and type support (added)
  • Context menu support to Image, List, Select, and Table widgets (added)
  • font() helper for loading external font files (added)

  • Box() and Grid() now accept css, size, fixed_size, min_size, max_size, and id parameters (added)
  • Column() now accepts margin and spacing parameters (added)
  • tab() now accepts an id parameter (added)
  • Window.run() now accepts instance and child parameters for multi-window support (added)
  • Window.fullscreen() method (added)
  • Window now accepts alignment, radius, and hide_cursor parameters (added)
  • Rounded window mask with radius parameter and live resize support (added)

  • Multi-window management via internal window registry (added)
  • ensure_window_root() utility for multi-window context resolution (added)
  • CSS scoping improvements and alias table pre-compilation for faster parsing (improved)
  • MenuBar class renamed from Menubar for consistency (changed)

  • Custom exception classes now carry docstrings (improved)
  • blob and null database types expanded with proper class bodies (improved)
  • Clera Editor layout stabilised; editor auto-runs on import (fixed)


Metadata

Release files for clera 0.3.1

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

Source distribution (sdist)

Source distribution for clera 0.3.1
File Size Uploaded
clera-0.3.1.tar.gz 313.6 kB Details

Release files / clera-0.3.1.tar.gz

Download URL clera-0.3.1.tar.gz
Size 313.6 kB
Tags Source
SHA-256 checksum
How to use checksums
87707d9cf63ce22af701be3ca1b6859b2a67a3595879edf04bf0d7d427ae5f91
BLAKE2b-256 checksum
How to use checksums
be5e0737e071168330f2c103c71095935c646b9e914bc8728184ea3224ca6ddc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.4

Release history Release notifications | RSS feed

This release

0.3.1 This release

1 release file

0.3.0

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

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