Future

Cover image for Leviathan UI PyQt5 Framework for New Era of Programming
Jesús Quijada
Jesús Quijada

Posted on

Leviathan UI PyQt5 Framework for New Era of Programming

Hola, soy jesusquijada34 y 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.

Este post incluye ejemplos visuales de los modos disponibles, cómo se ven al iniciar y cerrar una app, y cómo puedes integrarlo en tus proyectos aunque seas principiante.


📦 ¿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

Para instalar Leviathan UI necesitas tener Python y pip configurados.

En tu terminal escribe:

pip install leviathan-ui==1.0.0
Enter fullscreen mode Exit fullscreen mode

Esto descargará la versión estable publicada en PyPI.


🚀 Primeros pasos

El uso básico es muy sencillo:

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)

        # 1. WipeWindow: Polished Mode (Rounded glass with shadow)
        #    "polished"
        # 2. WipeWindow: Ghosted Mode (Transparent glass)
        #    "ghost"
        # 2. WipeWindow: Ghosted Blur Mode (Blurred Liquid Glass)
        #    "ghostBlur"
        WipeWindow.create()\
            .set_mode("polished")\
            .set_background("auto")\ # auto: sync with windows palette or HEX Color for a customized background and accent
            .set_radius(10)\ # recommended radius for a squared window
            .apply(self) # start mode

        layout = QVBoxLayout(self)
        layout.setContentsMargins(0, 0, 0, 0)
        layout.setSpacing(0)

        # 2. CustomTitleBar: Windows 11 Style (Botones SVG e integración de acento)
        self.title_bar = CustomTitleBar(self, title="LEVIATHAN ENGINE V2.0") # The title app
        layout.addWidget(self.title_bar)


        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)

        self.btn.clicked.connect(self.close)

if __name__ == "__main__":
    app = QApplication(sys.argv)

    # 3. InmojiTrx: Icono Premium
    InmojiTrx("🐉").apply(app) # Premium Logo (BETA) or Emoji indicator

    # 4. Definimos el Splash de Entrada (Modo Adaptive: no tapa el taskbar)
    # Soporta frases personalizadas de inicio
    mi_app = MiAppPrincipal()

    splash = InmersiveSplash(title="Iniciando...", logo="🐉", color="auto")\ #The icon for a centered plash and the title of splash
        .set_mode("adaptive")\ # adjust to your DPI 
        .set_phrases([
            "Iniciando UWP"
        ])\
        .on_finish(mi_app.show)\ # Trigger: On app are kill
        .attach_to_window(mi_app, exit_phrases=[
            "Saliendo de la UWP" # Pin to your frame
        ])

    # ¡Despegue!
    splash.start()
    sys.exit(app.exec_())
Enter fullscreen mode Exit fullscreen mode
  • El parámetro mode define el estilo visual:
    • "polished" → estilo clásico tipo UWP (Windows moderno).
    • "ghost" → interfaz transparente como vidrio.
    • "ghostBlur" → vidrio líquido con desenfoque.

👉 Si no pasas ningún parámetro, 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 Pones cualquier frase que gustes

Splash UWP


✨ Polished Mode — Estilo UWP clásico

Este modo ofrece una interfaz limpia y moderna, con fondo sólido y botones bien definidos. Ideal para apps tipo escritorio que buscan claridad y estructura.

  • Estilo tipo Windows UWP.
  • Botones visibles, sin efectos visuales complejos.
  • Perfecto para entornos profesionales o educativos.

Polished Mode


👻 Ghosted Mode — Transparencia elegante

En este modo, Leviathan UI aplica una capa de vidrio transparente sobre un fondo natural. Ideal para apps que buscan estética minimalista y conexión con el entorno.

  • Fondo visible detrás de la interfaz.
  • Botones flotantes sobre paisajes o fondos personalizados.
  • Perfecto para dashboards o apps creativas.

Ghosted Mode


💧 Ghosted Blur Mode — Vidrio líquido difuminado

Este es el modo más avanzado visualmente. Combina transparencia con desenfoque dinámico, simulando una interfaz de vidrio líquido al estilo UWP moderno.

  • Fondo borroso con efecto de profundidad.
  • Ideal para apps que quieren destacar visualmente.
  • Inspirado en interfaces tipo Fluent Design.

Ghosted Blur Mode


🌐 Enlaces oficiales


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

👉 Mi recomendación: empieza con polished" para 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!

Top comments (0)