Leviathan UI PyQt5 Framework Inspired by Windows 11 Core Skin
Source: Dev.to
👋 Hola, soy jesusquijada34
Quiero presentarte Leviathan UI, un paquete Python que desarrollé para facilitar la creación de interfaces gráficas con un enfoque visual moderno, modular y adaptable.
¿Qué ofrece Leviathan UI?
- Estética inspirada en Windows 11 (modo claro y oscuro).
- Componentes reutilizables (botones, tarjetas, barras de navegación, etc.).
- Temas personalizables y soporte para modo oscuro automático.
- Arquitectura modular que permite añadir o quitar módulos sin romper la aplicación.
- Fácil de usar: ideal tanto para principiantes como para desarrolladores avanzados.
Modos disponibles
| Modo | Descripción | Vista previa |
|---|---|---|
| Light | Tema claro con colores suaves y contrastes bajos. | ![]() |
| Dark | Tema oscuro con tonos profundos, ideal para entornos con poca luz. | ![]() |
| Auto | Cambia automáticamente entre Light y Dark según la configuración del sistema. | ![]() |
Cómo se ve al iniciar y cerrar una aplicación
Pantalla de inicio
+---------------------------------------------------+
| ████ ████ ████ ████ ████ ████ ████ |
| ████ ████ ████ ████ ████ ████ ████ |
| |
| Bienvenido a Leviathan UI |
| Cargando componentes... |
+---------------------------------------------------+
Pantalla de cierre
+---------------------------------------------------+
| ████ ████ ████ ████ ████ ████ ████ |
| ████ ████ ████ ████ ████ ████ ████ |
| |
| Gracias por usar Leviathan UI! |
| Guardando estado... |
+---------------------------------------------------+
Integración rápida (para principiantes)
-
Instala el paquete
pip install leviathan-ui -
Crea una ventana básica
from leviathan_ui import LeviathanApp, MainWindow # Instancia la aplicación con el tema deseado app = LeviathanApp(theme="auto") # "light", "dark" o "auto" # Crea la ventana principal window = MainWindow(title="Mi primera app con Leviathan UI") window.resize(800, 600) # Añade un widget simple (por ejemplo, un botón) from leviathan_ui.widgets import Button btn = Button(text="¡Haz clic aquí!") window.setCentralWidget(btn) # Ejecuta la aplicación app.exec_() -
Ejecuta el script
python my_app.py
Más allá de lo básico
- Navegación avanzada: Usa
Sidebar,TopBaryBreadcrumbspara crear interfaces complejas. - Temas personalizados: Modifica el archivo
theme.jsono crea tu propio tema con la claseTheme. - Componentes dinámicos: Integra tablas, gráficos y formularios con soporte de validación incorporado.
📚 Recursos
- Documentación completa: https://leviathan-ui.readthedocs.io
- Repositorio en GitHub: https://github.com/jesusquijada34/leviathan-ui
- Ejemplos y tutoriales: https://github.com/jesusquijada34/leviathan-ui/tree/main/examples
📦 ¿Qué es Leviathan UI?
Leviathan UI es un paquete ligero para crear interfaces gráficas en Python, ideal para:
- Aplicaciones educativas, técnicas o experimentales.
- Proyectos que requieren una GUI rápida sin depender de frameworks pesados.
- Interfaces visuales con efectos como transparencia, desenfoque y estilos tipo UWP.
En pocas palabras: te permite darle cara y estilo a tus programas en Python con muy poco código.
⚙️ Instalación
pip install leviathan-ui==1.0.0
Esto descargará la versión estable publicada en PyPI.
🚀 Primeros pasos
Ejemplo mínimo para iniciar una aplicación con Leviathan‑UI usando los componentes principales:
import sys
from PyQt5.QtWidgets import (
QApplication,
QPushButton,
QVBoxLayout,
QWidget,
QLabel,
)
from PyQt5.QtCore import Qt
from lib.shared import (
InmersiveSplash,
InmojiTrx,
WipeWindow,
CustomTitleBar,
)
class MiAppPrincipal(QWidget):
def __init__(self):
super().__init__()
self.setObjectName("MainWindow")
self.resize(900, 550)
# ── Configuración de la ventana ──
(
WipeWindow.create()
.set_mode("polished") # "polished", "ghost" o "ghostBlur"
.set_background("auto") # Sincroniza con la paleta de Windows o usa un HEX
.set_radius(10) # Radio recomendado para una ventana cuadrada
.apply(self) # Aplica la configuración
)
# ── Layout principal ──
layout = QVBoxLayout(self)
layout.setContentsMargins(0, 0, 0, 0)
layout.setSpacing(0)
# ── Barra de título estilo Windows 11 ──
self.title_bar = CustomTitleBar(self, title="LEVIATHAN ENGINE V2.0")
layout.addWidget(self.title_bar)
# ── Contenido central ──
content = QWidget()
content_lay = QVBoxLayout(content)
content_lay.setAlignment(Qt.AlignCenter)
label = QLabel("Test de Leviathan‑UI: Polished Mode")
label.setStyleSheet(
"color: white; font-size: 24px; font-weight: bold; font-family: 'Segoe UI';"
)
content_lay.addWidget(label, alignment=Qt.AlignCenter)
self.btn = QPushButton("Cerrar app")
self.btn.setFixedSize(280, 50)
self.btn.setStyleSheet(
"""
QPushButton {
background-color: rgba(255,255,255,0.08);
color: white;
border: 1px solid rgba(255,255,255,0.3);
border-radius: 12px;
font-weight: bold;
font-size: 14px;
}
QPushButton:hover {
background-color: white;
color: black;
}
"""
)
content_lay.addWidget(self.btn, alignment=Qt.AlignCenter)
layout.addWidget(content, 1)
# Cerrar la aplicación al pulsar el botón
self.btn.clicked.connect(self.close)
if __name__ == "__main__":
app = QApplication(sys.argv)
# ── Emoji premium (BETA) ──
InmojiTrx("🐉").apply(app)
# ── Instancia de la ventana principal ──
mi_app = MiAppPrincipal()
# ── Splash de inicio (modo adaptive) ──
splash = (
InmersiveSplash(title="Iniciando...", logo="🐉", color="auto")
.set_mode("adaptive") # Ajusta al DPI del monitor
.set_phrases(["Iniciando UWP"])
.on_finish(mi_app.show) # Muestra la ventana al terminar
.attach_to_window(
mi_app,
exit_phrases=["Saliendo de la UWP"],
)
)
# Inicia el splash y la aplicación
splash.start()
sys.exit(app.exec_())
Resumen de los pasos
- Crear y configurar la ventana con
WipeWindow. - Añadir una barra de título personalizada mediante
CustomTitleBar. - Insertar el contenido (etiquetas, botones, etc.) dentro de un
QVBoxLayout. - Aplicar un emoji premium con
InmojiTrx(opcional). - Definir y lanzar el splash usando
InmersiveSplash.
Con este esqueleto tienes una base funcional para seguir desarrollando tu interfaz con Leviathan‑UI.
🎨 Parámetros de mode
| Valor | Descripción |
|---|---|
polished | Estilo clásico tipo UWP (Windows moderno). |
ghost | Interfaz transparente como vidrio. |
ghostBlur | Vidrio líquido con desenfoque. |
Nota: Si no se especifica ningún parámetro, la aplicación se abre en modo básico.
🔌 Splash Screen — Inicio y cierre de apps
Este splash aparece al abrir o cerrar una app construida con Leviathan UI. El dragón animado y el fondo oscuro transmiten una atmósfera técnica y mística.
Al iniciar y al cerrar la app puedes poner cualquier frase que gustes.
✨ Polished Mode — Estilo UWP clásico
- Estilo tipo Windows UWP.
- Botones visibles, sin efectos visuales complejos.
- Perfecto para entornos profesionales o educativos.
👻 Ghosted Mode — Transparencia elegante
- Fondo visible detrás de la interfaz.
- Botones flotantes sobre paisajes o fondos personalizados.
- Ideal para dashboards o apps creativas.
💧 Ghosted Blur Mode — Vidrio líquido difuminado
- Fondo borroso con efecto de profundidad.
- Ideal para apps que quieren destacar visualmente.
- Inspirado en interfaces tipo Fluent Design.
🌐 Enlaces oficiales
- PyPI:
leviathan-uiv1.0.0 – Leviathan UI Oficial Repo - GitHub: JesusQuijada34
- Website: Flarm Store
- Telegram: Jesus Quijada | Influent Projects
- Patreon: JesusQuijada34
🎯 Conclusión
Leviathan UI es perfecto para principiantes que quieren experimentar con interfaces gráficas en Python sin complicarse demasiado. Con solo unas líneas de código puedes tener una ventana funcional y atractiva.
Recomendación: empieza con
polishedpara familiarizarte, y luego prueba los modos transparentes y con desenfoque para darle estilo a tus apps.
Si te gusta el proyecto, considera apoyarlo en GitHub o Patreon. ¡Gracias por leer!






