DEV Community

Jesús Quijada
Jesús Quijada

Posted on

🐉 Leviathan UI v1.0.0 — Interfaces gráficas modernas en Python

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)