Ctrl K
ComunidadGuías…
GITHUB · ANALIZADO

studio-os

Studio OS es una plataforma auto-alojada para gestionar estudios boutique como yoga o pilates. Permite reservas públicas, packs de clases y membresías utilizando tu propia cuenta de Stripe sin comisiones extra. Funciona con Node.js y SQLite en un único contenedor Docker, ofreciendo una alternativa l

Ficha actualizada 27 sept 2026, 9:05 · upstream 27 sept 2026, 8:52 · release v0.4.0

Ver códigoProblemas y ayudaRepositorio ↗Sitio oficial
00

Qué es studio-os

Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.

Studio OS es una solución auto-alojada diseñada para estudios boutique como yoga, pilates o gimnasios pequeños. Su característica distintiva es que procesa los pagos directamente en tu cuenta de Stripe, eliminando márgenes y tarifas por reserva típicas del software SaaS. La aplicación utiliza Node.js con Express y SQLite en un único archivo, permitiendo despliegues simples en contenedores Docker o servidores bare-metal sin necesidad de pasos de compilación frontend complejos.

Ofrece gestión completa de reservas públicas con captura de exenciones de responsabilidad (waivers), sistemas de créditos para packs de clases y membresías recurrentes. Incluye herramientas administrativas para gestionar horarios, listas de espera automáticas, reportes de ingresos y la importación idempotente de datos desde Mindbody mediante CSV. La interfaz está construida con EJS, HTMX y Pico.css, garantizando que funcione incluso sin conexión a internet una vez cargada.

La arquitectura prioriza la simplicidad operativa: todo el código frontend está empaquetado (vendored), no requiere CDN ni build steps, y la base de datos es un único archivo SQLite. Esto facilita copias de seguridad automáticas mediante cron o herramientas estándar de sistema operativo.

CASOS DE USO
  • Gestión de reservas públicas para estudios boutique (yoga, pilates) sin login obligatorio.
  • Venta de packs de clases y membresías recurrentes usando cuenta propia de Stripe.
  • Migración de datos desde Mindbody mediante importación CSV idempotente.
  • Gestión de horarios automáticos con listas de espera FIFO y promoción automática.
  • Portal de instructores con acceso restringido a su propio roster y check-in.
  • Despliegue auto-alojado en VPS económicos o máquinas locales sin dependencias complejas.
PUNTOS DESTACADOS
  • Pagos en cuenta propia de Stripe: cero márgenes ni tarifas por transacción.
  • Arquitectura monolítica simple: Node.js + SQLite en un solo archivo, fácil backup.
  • Sin frontend build: EJS y HTMX vendidos, funciona offline tras carga inicial.
  • Importación segura de Mindbody: lógica idempotente basada en email para evitar duplicados.
  • Seguridad básica integrada: CSRF tokens, rate limiting por IP y cookies seguras.
  • Despliegue flexible: Docker Compose o Node nativo sin configuración compleja.
PRECAUCIONES
  • Versión v0.1: soporta un solo estudio, ubicación y zona horaria simultáneamente.
  • Sin autenticación de dos factores (2FA) en accesos de personal o administradores.
  • Rate limiting en memoria: no es compartido entre múltiples instancias del servidor.
  • HTTPS gestionado externamente: el proxy inverso debe manejar terminación TLS.
  • Interfaz y reportes en inglés; sin gráficos visuales, solo tablas CSV.
VISUAL

Capturas del proyecto

Imágenes reales detectadas en la documentación del repositorio.

Public scheduleBooking formBuy pageAdmin dashboardRosterScheduleClientReports
01

Perfil de infraestructura

Estimación inicial derivada del repositorio y de los servicios detectados.

CPU2 vCPUrecomendación inicial
MEMORIA2 GBRAM estimada
DISCO10 GBalmacenamiento base
COMPLEJIDADmediumnivel de operación
02

Despliegue detectado

Qué señales reales de instalación hemos encontrado.

Listo para automatizar

Requiere Node.js 22+ o Docker Engine 28.x con base node:22-slim. Ejecutar detrás de un proxy inverso (nginx/Caddy) configurando TRUST_PROXY=1 para cookies seguras y correos válidos. Copiar .env.example a .env para definir puertos, SMTP y claves Stripe. Base de datos persiste en volumen studio-data o archivo data/studio.db.

✓Dockerfile
✓Compose
✓One-click
03

Stack y dependencias

Componentes inferidos a partir de manifests, configuración y documentación.

FRAMEWORKS
Node.js
SERVICIOS
No detectados
BASES DE DATOS
No detectadas
PUERTOS
3000587
05

Puede sustituir a

Relaciones detectadas por el análisis del repositorio y su categoría.

06

Experiencia real de la comunidad

Ayuda a contrastar la estimación automática con instalaciones reales.

Todavía no hay datos comunitarios para este proyecto.