Control biométrico
Apertura de puerta por huella con el terminal Hikvision DS-KAS261. Match automático por cédula o vinculación manual de huellas pendientes.
Power · Gym Access centraliza el control de acceso biométrico (huella), las membresías, los pagos y las notificaciones en un solo sistema que corre en tu propia PC — sin cuotas de nube y funcionando incluso sin internet.
Control de acceso físico, cobranza y comunicación con tus clientes — integrados y sin depender de servicios externos.
Apertura de puerta por huella con el terminal Hikvision DS-KAS261. Match automático por cédula o vinculación manual de huellas pendientes.
Planes diario, semanal, mensual, trimestral y anual. Registro de pagos con tasa BCV actualizada automáticamente y control de vencimientos.
WebSocket para el personal y Web Push para los clientes (PWA instalable en el móvil). Avisos de vencimiento automáticos antes y después de la fecha límite.
Comunícate con un toque mediante enlaces wa.me desde la ficha del cliente: recordatorios de pago, avisos y atención directa.
Contraseñas con hash, cifrado en reposo (Fernet) de credenciales, auditoría firmada con HMAC, bloqueo anti fuerza bruta y cabeceras HTTP seguras (CSP, HSTS).
Marcajes, pagos y acciones sensibles trazados y verificables. Reportes para la gerencia y control de caja desde el mismo panel.
El socio se auto-registra, consulta su membresía, registra sus pagos y recibe avisos push — sin saturar la recepción.
El acceso físico sigue funcionando aunque se caiga internet: el control del terminal corre 100% en local y la base de datos es SQLite con WAL.
El sistema vive en la PC del gimnasio. Cada cliente recibe una URL única — nombredelcliente.powergym.dev — que apunta a su instancia vía Cloudflare Tunnel. El acceso físico nunca depende de internet.
Única cuenta
Dueño del gimnasio. Gestiona cuentas de staff, conecta el terminal Hikvision, configura el sistema y revisa reportes y auditoría.
Recepción + gerencia
Recepción y gerencia en las mismas pantallas, sin límite de cuentas. Cobran, enrolan huellas, vinculan pendientes y atienden al socio.
Socio / miembro
Se auto-registra, ve su membresía, registra sus pagos y recibe avisos en su móvil como PWA con Web Push. Sin instalar apps de terceros.
Documentación paso a paso para instalar, conectar el terminal y desplegar el sistema de forma robusta.
PowerGymAccess-2.0.0-win64.zip desde la sección Descargar..zip en una carpeta fija (por ejemplo C:\PowerGymAccess).PowerGymAccess.exe. No requiere Python ni instalar nada más.http://localhost:8005 y aparece el asistente para crear la única cuenta de administrador./admin → Cuentas Staff crea las cuentas de recepción/gerencia, y desde Configuración conecta el terminal Hikvision.💡 Los secretos (clave JWT, cifrado, VAPID) se generan solos en el primer arranque y se guardan en un .env que el propio sistema crea. No hay que copiar plantillas ni ejecutar scripts.
Usa SADP Tool (gratis, de Hikvision) para escanear la red y obtener la IP y el puerto HTTP del equipo (por defecto 80).
Si el 80 está ocupado: en la web del equipo, Configuration → Network → Basic Settings → Port.
El equipo debe saber a dónde enviar cada marcaje: Configuration → Network → Advanced Settings → HTTP Listening / Event Notification → la IP local de esta PC y el puerto 8080 (por defecto).
Dos escenarios soportados:
employeeNo. El sistema hace match automático desde el primer marcaje.Usa NSSM (Non-Sucking Service Manager) o el Programador de Tareas con disparador “Al iniciar el sistema”, ejecutando PowerGymAccess.exe con el directorio de inicio de la carpeta descomprimida.
Para instalación desde código fuente, crea /etc/systemd/system/power-gym-access.service con ExecStart=/ruta/venv/bin/python main.py y actívalo con sudo systemctl enable --now power-gym-access.
Tu sistema corre en tu PC (localhost:8005). Para que staff, admin y clientes accedan desde internet, usas Cloudflare Tunnel (gratis) con tu URL fija: tu-gym.powergym.dev.
Cómo funciona: tu proveedor configura esa URL única para ti y te entrega las credenciales del túnel (un archivo .json y un config.yml). Tú solo ejecutas cloudflared con esa configuración:
# config.yml (te lo entrega tu proveedor)
tunnel: TUNNEL_ID
credentials-file: C:\cloudflared\TUNNEL_ID.json
ingress:
- hostname: tu-gym.powergym.dev
service: http://localhost:8005
- service: http_status:404
cloudflared tunnel run tu-gym
Instálalo como servicio para que se reconecte solo tras reinicios. La URL es fija y única por gimnasio: no cambia nunca.
python scripts/backup_db.py
Programa este script a diario (cron o Tarea Programada). Copia data/power_gym_access.db a data/backups/ con timestamp y rota automáticamente (14 días).
.env nunca debe subirse a un repositorio (contiene secretos JWT, cifrado y VAPID).audit_log, verificable desde Auditoría.Un solo .zip con todo incluido. Descomprime, ejecuta y listo.
SmartScreen puede avisar por ser un .exe sin firma: pulsa “Más información” → “Ejecutar de todas formas”.
0A59B23192676F56A0889468A405678420446AAADD410EA8A3C267C2AAB345E4
Escríbeme y te ayudo a dejar el sistema funcionando en tu gimnasio.
Los datos de contacto son placeholders de ejemplo — reemplázalos por tus datos reales en index.html (sección #contacto).