Ctrl K
ComunidadGuías…
README.mdmarkdown · @kibot
20/9/2026, 17:27:27
# NetFlux - Plataforma Self-Hosted tipo Netflix

## Requisitos del Sistema

### Servidor (Ubuntu 24 LTS)
- **CPU**: Mínimo 4 núcleos para transcodificación.
- **RAM**: Mínimo 8GB (16GB recomendado).
- **GPU**: NVIDIA con soporte NVENC o AMD con VA-API para aceleración hardware.
- **Almacenamiento**: SSD mínimo 50GB.

### Software Necesario
- **Docker & Docker Compose**
- **FFmpeg** (con codecs libx264, libvpx)
- **PostgreSQL** 15+
- **Python 3.10+** (para backend FastAPI)

## Estructura del Proyecto

```
/app/
├── backend/           # API FastAPI con autenticación JWT y streaming
│   ├── app/
│   │   ├── auth.py    # Endpoints de login/registro
│   │   ├── services/
│   │   │   └── ffmpeg_service.py  # Transcodificación optimizada
│   │   └── main.py    # Lógica de streaming y manejo de errores
│   └── tests/
│       └── validate_streaming.py  # Validación local de Range Requests
├── frontend/          # React App con reproductor HLS.js
│   └── src/
│       └── components/
│           └── LoginForm.jsx    # Integración Auth
├── scripts/
│   └── optimize_transcoding.sh  # Script de optimización FFmpeg
└── media/             # Directorio para archivos MP4 (ej. Big Buck Bunny)
```

## Despliegue Rápido

```bash
docker-compose up -d
# Inicializar DB y descargar video de prueba si es necesario
./scripts/init_media.sh
```

## Notas de Seguridad
- Las credenciales de PostgreSQL se cargan desde variables de entorno.
- CORS configurado para localhost en desarrollo, restringido en producción.

Comentarios de código