El centro de control definitivo, modular y ligero para streamers en Kick.com
MiniKick es una aplicación de escritorio nativa diseñada para orquestar la interacción en directo sin sacrificar los FPS de tu transmisión. Operando por completo fuera del navegador, reduce drásticamente el consumo de memoria RAM y ciclos de CPU, integrando lectura de chat inteligente por voz (TTS), moderación automatizada y control multimedia en tiempo real.
| Módulo | Función | Descripción |
|---|---|---|
| Motor de Chat | Pipeline Unidireccional | Procesamiento de mensajes mediante tubería de interceptores puros (AutoMod ➔ Comandos ➔ UI ➔ TTS) con cortocircuito de ejecución. |
| Voz Híbrida (TTS) | Narración Inteligente | Alternancia dinámica entre voces neurales en la nube (edge-tts) y SAPI5 local (pyttsx3) con limpieza matemática de enlaces y emotes. |
| Integración Spotify | Control de Puntos | Canje de canciones (!sr), saltos (!skip) y consulta de pista (!song) con resolución automática de alias y cooldowns por base de datos. |
| Conectividad Edge | WebSockets |
Captura instantánea de eventos de Kick.com con tablas de despacho en memoria RAM y supresión de parseo JSON redundante. |
| AutoMod Integrado | Filtros Anti-Spam | Protección activa contra exceso de mayúsculas, símbolos, párrafos masivos y enlaces con sanciones directas a la API de Kick. |
| Sistema OTA | Actualizaciones | Verificación, descarga e instalación de parches en segundo plano de forma totalmente transparente e ininterrumpida. |
Note
Todas las preferencias de usuario, bases de datos locales (SQLite) y tokens cifrados de sesión persisten de forma aislada en el directorio nativo del sistema: AppData\Local\.Minikick.
MiniKick no es un script convencional; está construido bajo estándares estrictos de Ingeniería de Software a Escala. Para garantizar latencias inferiores a un milisegundo y cero fugas de memoria durante streams de más de 12 horas, el código respeta los siguientes principios:
-
Eficiencia Algorítmica Big-O ($O(1)$): Erradicación de bucles anidados en rutas críticas (Hot-Paths). Las validaciones de usuarios ignorados utilizan tablas hash
Set()nativas, y los analizadores de texto reemplazan condicionales masivas por Tablas de Despacho estáticas. -
Patrón Pipeline (Chain of Responsibility): Desacoplamiento absoluto del flujo del chat. Cada mensaje entrante es un objeto inmutable (
DTO) que atraviesa transformaciones puras e independientes. -
Gestión Segura de Memoria C++/Qt: Prevención de hilos huérfanos (Memory Leaks). Todos los procesos asíncronos aplican liberación determinista del Kernel mediante el patrón
.finished.connect(deleteLater). - Inversión de Dependencias y SoR: Separación estricta entre capas de Red (Providers), Lógica de Dominio (Services) y Presentación Pasiva (Views/PySide6).
Important
Normativa de Contribución: Cualquier Pull Request propuesta para el proyecto debe pasar auditoría de complejidad temporal y respetar el desacoplamiento de capas para ser fusionada en la rama main.
- Core & GUI: Python 3.10+ | PySide6 (Qt for Python) | Qt Style Sheets (QSS contextual)
- Networking: WebSockets | Requests | Cloudscraper (CF Bypass)
- Audio Engine: Edge-TTS (Edge Cloud) | Pyttsx3 (Native OS)
- Database & Storage: SQLite3 | JSON File Storage
- Build & Deployment: PyInstaller | Inno Setup
- Dirígete a la página de Releases Oficiales.
- Descarga el instalador ejecutable (
MiniKick_Installer.exe). - Ejecuta el asistente nativo en tu ordenador Windows 10/11.
Configuración del entorno local para experimentación y desarrollo:
# 1. Clonar el repositorio
git clone [https://github.com/Andro2k/MiniKick.git](https://github.com/Andro2k/MiniKick.git)
cd MiniKick
# 2. Crear y activar entorno virtual
python -m venv .venv
.\.venv\Scripts\activate
# 3. Instalar dependencias de desarrollo
pip install -r requirements.txt
# 4. Iniciar aplicación con recolector de logs
python main.py
Tip
Si experimentas algún comportamiento inesperado de red o cierre abrupto, revisa primero la pestaña interna Developer ➔ Logs de la aplicación antes de abrir un Issue adjuntando el trazo de error.