Sobre el proyecto
Beatsync es un reproductor de audio web de alta precisión diseñado para reproducción multi-dispositivo y audio espacial. La aplicación oficial está alojada en beatsync.gg.
### Características principales
- **Sincronización de precisión milimétrica**: Utiliza primitivas de sincronización de tiempo inspiradas en NTP para lograr una alineación de audio multi-dispositivo altamente precisa.
- **Multiplataforma**: Funciona en cualquier dispositivo con un navegador moderno (se recomienda Chrome para un mejor rendimiento).
- **Audio espacial**: Permite el control de volumen de los dispositivos a través de una fuente de escucha virtual para efectos sonoros únicos.
- **Interfaz pulida**: Incluye estados de carga suaves, indicadores de estado y una interfaz integrada.
- **Autoalojable**: Ejecuta fácilmente tu propia instancia con unos pocos comandos simples.
### Arquitectura
El proyecto está organizado como un monorepo de Turborepo con los siguientes espacios de trabajo:
- `apps/server`: Servidor Bun HTTP + WebSocket.
- `apps/client`: Frontend de Next.js que utiliza Tailwind y Shadcn/ui.
- `packages/shared`: Esquemas con seguridad de tipos y funciones compartidas entre el cliente y el servidor.
### Inicio rápido
Para ejecutar el proyecto localmente:
1. Configura las variables de entorno en `apps/client/.env` (`NEXT_PUBLIC_API_URL` y `NEXT_PUBLIC_WS_URL`).
2. Instala las dependencias e inicia los servidores de desarrollo usando Bun:
- `bun install`
- `bun dev` (inicia el cliente en :3000 y el servidor en :8080)
Nota: El proyecto está en desarrollo temprano, y el soporte móvil es actualmente experimental.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.