Ir al contenido

El framework de frontend en Python para apps de escritorio

Diseña tu interfaz de forma visual o en código, dale estilo con temas y shaders en la GPU y distribúyela en Windows, macOS y Linux. Python puro, dibujado de forma nativa por Rust. Inspirado en la interfaz del editor Zed y en Godot, Unreal Engine, Visual Basic y Qt Designer; móvil y web están en el plan.
Última versión estable: v1.9.0 · 2026-10-22Ver novedades →
Pyzed Design con un formulario de inicio de sesión: caja de herramientas y esquema a la izquierda, el formulario en el centro y sus propiedades a la derechaPyzed Design con un formulario de inicio de sesión: caja de herramientas y esquema a la izquierda, el formulario en el centro y sus propiedades a la derecha
componentes listos para usar
90+
temas incluidos
11
iconos Lucide
~2000
plataformas de escritorio
3
renderizado nativo (Iced)
Rust

Explora

Todo lo que abarca Pyzed

Pyzed es una biblioteca, un diseñador visual y un conjunto de herramientas alrededor. Ve directo a la parte que necesitas.

Funcionalidades

Todo lo que necesitas para una app de escritorio

Del primer boceto al ejecutable que distribuyes: un diseñador visual, un sistema de componentes, un editor de código que conoce tu proyecto y una biblioteca de interfaz moderna con temas y modo oscuro.

Un botón, un cuadro de texto y una casilla arrastrados desde las herramientas a un formulario vacío en Pyzed Design
Dibuja una ventana: arrastra controles al formulario.
Píntala en la GPU: conecta nodos en un shader.

Pyzed Design

Dibuja tus ventanas y pulsa F5

Un editor de formularios al estilo de Visual Basic y Qt Designer, hecho con el propio Pyzed. Lo que dibujas es lo que se ejecuta: sin pasos de generación de código ni sorpresas.

  • Arrastra componentes desde la caja de herramientas y anídalos en paneles, filas flex y grids
  • Guías inteligentes, ajuste a la cuadrícula, alinear, distribuir y anclajes como en WinForms
  • Paneles de Propiedades y Eventos: doble clic en un evento para escribir su código
  • Se guarda como un .pzform legible y un archivo Python normal; se ejecuta con pyzed run
Guía del diseñador visual
El diseñador con un formulario de inicio de sesión y las propiedades del botón seleccionadoEl diseñador con un formulario de inicio de sesión y las propiedades del botón seleccionado
El formulario de inicio de sesión ejecutándose como una ventana real

Diseñador de componentes

Componentes reutilizables, como las escenas de Godot

Diseña un componente una vez y colócalo en cualquier formulario o dentro de otros componentes. Cada uno es una clase pz.Component normal, así que dibujarlo y escribirlo a mano es lo mismo.

  • Propiedades con tipo, estado interno, métodos y eventos propios
  • Enlaces que mantienen los controles hijos sincronizados con las propiedades
  • Herencia y anidamiento, con layouts responsivos
  • Aparece en la caja de herramientas con su etiqueta, icono y categoría
Guía del diseñador de componentes
Un componente ProfileCard con su clase, su entrada en la caja de herramientas, su layout y sus propiedades
Tarjetas hechas con el componente, en ejecución

Editor de código

Un editor de Python que conoce tu proyecto

Los manejadores de eventos se escriben dentro del diseñador, con los servidores de lenguaje ty y ruff de Astral funcionando en el entorno de tu propio proyecto.

  • Autocompletado con firmas y docstrings, importaciones automáticas y los controles de form.
  • Diagnósticos en línea (error lens), lista de problemas y code lens con referencias
  • Plegado de código, minimapa, cierre automático de paréntesis, estilos de cursor y tema propio
  • Formatea con ruff al aplicar los cambios
Funciones del editor de código
Autocompletando una función del módulo re con su firma, y errores en línea

Proyectos

Proyectos reales, sin complicaciones

Cada app es un proyecto uv normal con su propio .venv. Pyzed Design lo crea, instala paquetes y ejecuta las herramientas, así que tus formularios pueden importar cualquier librería de PyPI.

  • Añade, actualiza y quita dependencias desde la pestaña Proyecto
  • Un clic para lint, formato y comprobación de tipos con ruff y ty
  • Crea un repositorio git y mantén la interfaz junto al código de tu backend
Guía de proyectos
La pestaña Proyecto con los formularios, dependencias y herramientas de un proyecto uv

Agentes de IA

Un agente de IA que construye contigo

Describe una pantalla y el agente de Pyzed Design coloca los controles, escribe los manejadores, mira el resultado y comprueba su código; cada cambio se puede deshacer. Tu propio agente de programación recibe el mismo conocimiento por MCP.

  • Cualquier modelo: Claude, GPT, Gemini, Copilot, OpenRouter, modelos locales con Ollama y agentes externos
  • Adjunta imágenes, añade servidores MCP y guarda las claves en el llavero del sistema
  • Un servidor MCP y llms.txt para que Cursor, VS Code o Zed escriban código Pyzed correcto
  • pyzed.agents lleva el mismo bucle de agente a tus propias apps
Pyzed para agentes de IA
El panel del agente de Pyzed Design tras añadir un interruptor a un formulario y conectar su evento
Una app de chat hecha con pyzed.agents mostrando una respuesta en streaming

Biblioteca de componentes

Más de 90 componentes listos para usar

Botones, campos de texto, pestañas, árbol de archivos, paleta de comandos, tablas, gráficos, toasts, diálogos, un editor de código con resaltado, una terminal y un workspace completo con docks redimensionables. Todos siguen el tema activo y se pueden personalizar uno a uno.

  • Créalos desde código con pyzed.ui o colócalos desde la caja de herramientas del diseñador
  • Fuentes IBM Plex y unos 2000 iconos Lucide incluidos
Ver la biblioteca de componentes
Una galería de componentes de Pyzed: botones, campos, pestañas, un editor, un árbol, menús y notificacionesUna galería de componentes de Pyzed: botones, campos, pestañas, un editor, un árbol, menús y notificaciones

Bloques

Pantallas completas, listas para copiar

Paneles de control, un inicio de sesión, ajustes, un chat, un tablero kanban, una tabla de datos, un reproductor de música y más: pantallas completas y probadas hechas con la biblioteca de componentes. Copia una en tu proyecto y cambia lo que necesites.

  • Cada bloque tiene vista previa oscura y clara y su código completo
  • Archivos pequeños y legibles: un buen punto de partida para ti o para tu agente de IA
Ver los bloques
El bloque de panel de control: tarjetas de métricas, un gráfico y una tabla de pedidos recientesEl bloque de panel de control: tarjetas de métricas, un gráfico y una tabla de pedidos recientes

Temas

Claro, oscuro y tus propios temas

One, Ayu y Gruvbox comparten un mismo conjunto de tokens de color, en variantes clara y oscura. Sigue la apariencia del sistema, cambia de tema en caliente, deriva el tuyo en una línea o importa un archivo de tema de Zed.

  • 11 temas incluidos y un mismo conjunto de tokens para todos los componentes
  • Temas y colores de acento por ventana
Guía de temas
Un editor de código hecho con Pyzed en One Dark (One Light en el tema claro)Un editor de código hecho con Pyzed en One Dark (One Light en el tema claro)
La misma app en Gruvbox Dark con el buscador de archivos abierto

Efectos e interfaces de videojuego

Interfaces que brillan

Pyzed dibuja en la GPU, así que una app de Python puede parecer un videojuego moderno: cristal esmerilado con desenfoque real del fondo, bloom que derrama luz desde las partes brillantes, transparencia, rotación y tus propios shaders WGSL.

Crea videojuegos

De Snake a un shoot 'em up de neón

Todo lo que necesita un juego 2D ya está en Pyzed: un canvas en la GPU, un bucle que se ejecuta una vez por fotograma, las teclas pulsadas en este momento, sprites y partículas, y toda la biblioteca de widgets para menús y HUDs.

  • Tres juegos completos explicados paso a paso: Snake, Breakout y Neon Invaders
  • pz.frames para un bucle fluido a 60 fps, teclas mantenidas y ratón
  • Bloom, brillo y cristal sobre la acción, escritos en Python normal
Crear videojuegos con Pyzed
Neon Invaders: invasores en pixel art, brillo de neón y un HUD de cristal
Breakout con partículas y un bucle a 60 fps

Conecta tu backend

Las librerías que ya usas

Pyzed es solo la interfaz: el resto de tu app es Python normal. Demos ejecutables muestran cómo poner un frontend de escritorio nativo sobre el backend que ya conoces.

  • Cliente de FastAPI con el servidor dentro del mismo proceso
  • SQLAlchemy y SQLModel: 20.000 filas en una tabla virtual y formularios validados por tus modelos
  • El ORM async de Django, httpx y Pydantic, aiosqlite y más
Tutoriales de integración
Una app de contactos con 20.000 filas de SQLAlchemy en una tabla virtual y un panel de edición
Un cliente de escritorio para un servidor FastAPI

Por qué Pyzed

Una GUI de Python para una nueva generación

tkinter, Kivy y PyQt hicieron posibles las apps de escritorio en Python. Pyzed hace que se vean y se sientan como las herramientas que usas cada día, y es honesto sobre dónde los demás siguen ganando.

Pyzed comparado con otros toolkits de GUI para Python
Pyzed comparado con otros toolkits de GUI para PythonPyzedtkinterPyQt / PySideKivyFlet
Aspecto moderno y modo oscuro de serieSí11 temasNoEn parte o de tercerospersonalizableEn parte o de tercerosKivyMDSíMaterial
Renderizado en la GPUSíwgpuNoEn parte o de tercerosQt QuickSíOpenGLSíFlutter
Diseñador visualSíintegradoEn parte o de tercerosde tercerosSíQt DesignerNoNo
Recarga en caliente que conserva el estadoSíNoEn parte o de tercerossolo QMLEn parte o de tercerosde tercerosEn parte o de tercerosreinicia
Callbacks asyncSíNoEn parte o de tercerosQtAsyncioSíSí
Herramientas de IA (MCP, llms.txt, agentes)SíNoEn parte o de tercerosC++/QMLNoSíservidor MCP
Móvil y webNosolo escritorioNoEn parte o de tercerosAndroid en previewSímóvilSí

SíEn parte o de tercerosNo

Y mucho más

Con todo incluido

Los detalles que convierten un prototipo en una app que da gusto usar.

También desde código

Una app en 20 líneas

¿Prefieres escribirlo todo a mano? Pyzed es una librería de Python normal. Esta es una app completa:

counter.py
import pyzed as pz
from pyzed import ui
class Counter(pz.App):
title = "Counter"
size = (360, 220)
def __init__(self):
self.count = 0
def add(self, step):
self.count += step
def view(self):
return pz.center(pz.column([
ui.heading(str(self.count)),
pz.row([
ui.button("1", lambda: self.add(-1), icon="minus"),
ui.button("1", lambda: self.add(1), icon="plus", variant="solid"),
ui.icon_button("rotate-ccw", lambda: setattr(self, "count", 0)),
], spacing=8),
], spacing=16, align="center"), bg=self.theme.editor)
pz.run(Counter)
La app contador: un número sobre los botones menos, más y reiniciar

python counter.py

Aprende

Explora la documentación

Elige por dónde empezar.

Empieza a construir hoy

Libre y de código abierto. Descarga el diseñador como app independiente o instala la librería con pip.

pip install pyzed-ui