movwin es un framework de interfaz de usuario de terminal (TUI) desarrollado en Python por el programador conocido como movq. Nace de la insatisfacción con las bibliotecas existentes, que suelen cambiar de dirección y obligar a actualizar el código constantemente. El autor decidió crearlo tras el Advent of Code de 2025, buscando un control total y un rendimiento aceptable en hardware modesto, como un Intel NUC de hace diez años. Movwin se basa en ncurses, pero no usa sus subventanas; en su lugar, trata a ncurses como un framebuffer inteligente para dibujar y recibir entrada de teclado y ratón. Un objetivo clave es el soporte Unicode fiable, midiendo el ancho real de los caracteres con la biblioteca wcwidth. El framework incluye un sistema de ventanas y un gestor de ventanas inspirado en los TUI de DOS, aunque el soporte de ratón es limitado debido a las restricciones de los terminales Unix. El rendimiento de arranque es crítico: busca estar entre 200 y 300 ms, evitando dependencias pesadas como dataclasses para minimizar tiempos de importación. Movwin ya se utiliza en varias aplicaciones propias: tracktivity, un rastreador de actividades que genera formularios a partir de archivos CSV; bine, un editor hexadecimal con panel de información, búsqueda rápida en archivos de hasta 2 GB y soporte para múltiples ventanas; y un cronómetro laboral que puede mostrar el tiempo en un display de 7 segmentos conectado por Arduino. El framework incluye dos temas integrados (ámbar y azulgris) que cambian según la estación, y permite temas personalizados. El autor ha decidido no publicar el código por ahora para evitar que sea absorbido por empresas de inteligencia artificial sin respetar la licencia.
movwin: un framework TUI personal que busca estabilidad y rendimiento
