Skip to content

TripKode/PrintKodeTap

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PrintKodeTap

Servidor WebSocket multiplataforma ligero diseñado para actuar como puente de impresión y comunicación de hardware en segundo plano. Se ejecuta silenciosamente en la bandeja del sistema, cuenta con arranque automático integrado y ofrece una interfaz de control simple basada en CustomTkinter.

🚀 Características

  • Arranque Automático: Se integra nativamente con el sistema operativo (Windows Registry, Linux .desktop y macOS LaunchAgents) al ejecutarse por primera vez.
  • Ejecución Silenciosa: Inicia minimizado directamente en los íconos ocultos o bandeja del sistema para no interrumpir al usuario.
  • Servidor Asíncrono: Servidor WebSocket independiente basado en hilos (threading + asyncio) para garantizar que la interfaz gráfica nunca se congele.
  • Interfaz Minimalista: Un único botón central ON/OFF con monitoreo de dirección de exposición y conteo de clientes conectados en tiempo real.

📁 Estructura del Proyecto

PrintKodeTap/
├── assets/
│   └── icon.png          # Ícono de la aplicación (64x64 recomendado)
├── src/
│   ├── __init__.py
│   ├── autostart.py      # Configuración de inicio automático con el OS
│   ├── server.py         # Servidor WebSocket (Asyncio + Threads)
│   ├── gui.py            # Interfaz gráfica CustomTkinter
│   └── tray.py           # Control del System Tray (Bandeja de sistema)
├── main.py               # Punto de entrada de la aplicación
├── requirements.txt      # Dependencias del proyecto
└── build.py              # Script automatizado de compilación con PyInstaller

🛠️ Instalación y Configuración

Requisitos Previos

  • Python 3.13 o superior.

  • Un archivo de imagen válido en assets/icon.png (esencial para el System Tray, la app fallará si no existe).

Configuración del Entorno Virtual

Activa tu entorno virtual bridge e instala las dependencias requeridas:

.\bridge\Scripts\Activate.ps1

Activar entorno (Linux / macOS)

source bridge/bin/activate

Instalar paquetes requeridos

pip install -r requirements.txt

💻 Desarrollo

Para ejecutar y probar la aplicación en modo desarrollo sin compilar:

python main.py

Nota: La aplicación iniciará oculta directamente en la bandeja del sistema. Haz doble clic sobre el ícono o clic derecho -> "Abrir Interfaz" para desplegar la ventana de control.

📦 Compilación (Generar Ejecutable)

El script de empaquetado genera un único binario independiente, portable y libre de consolas de comandos en segundo plano. Debes ejecutar la compilación de forma nativa en el sistema operativo objetivo (PyInstaller no realiza compilación cruzada).

python build.py
  • Ubicación del Ejecutable (/dist): Windows: dist/PrintKodeTap.exe

  • Linux: dist/PrintKodeTap (Recuerda aplicar chmod +x PrintKodeTap antes de distribuirlo)

  • macOS: dist/PrintKodeTap.app (Requeres aprobación manual en Ajustes > Privacidad si se ejecuta en equipos de terceros sin firmar)

About

Lightweight cross-platform WebSocket daemon and hardware bridge for PrintKodeTap. Runs silently in the system tray with native autostart and a CustomTkinter GUI. Optimized for local ticket and POS printing automation.

Topics

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages