Repolode
polius

polius/FileSync

Aplicación web autohospedada que envía archivos en tiempo real desde un navegador a muchos otros, de igual a igual mediante WebRTC y sin límite de tamaño.

Estrellas
1,892
Forks
188
Issues abiertos
1
Último commit
anteayer

¿Qué es?

FileSync permite que un dispositivo comparta archivos con varios destinatarios a la vez. Quien envía crea una sala y comparte un enlace o código QR; los destinatarios lo abren en un navegador, sin instalar nada ni crear una cuenta. Las salas pueden protegerse con contraseña.

Los archivos se transfieren directamente entre navegadores mediante WebRTC cifrado. Un servidor de señalización solo ayuda a conectar los pares, y se usa un relay TURN cuando no es posible establecer una conexión directa. Los archivos recibidos se transmiten al disco a medida que llegan, por lo que el uso de memoria se mantiene constante independientemente del tamaño del archivo; si una transferencia se interrumpe, se vuelve a conectar y se reanuda.

El proyecto se distribuye como una única imagen de Docker. La configuración HTTPS usa Caddy con un dominio, lo que habilita en el navegador los métodos de guardado por streaming. HTTP sin cifrar funciona para pruebas locales, pero recurre a almacenar el archivo completo en memoria.

Funciones clave

  • 01Los archivos se transfieren directamente entre navegadores mediante WebRTC cifrado.
  • 02Transmite los archivos recibidos al disco para que los archivos grandes no agoten la memoria.
  • 03Reanuda automáticamente las transferencias interrumpidas.
  • 04Envía un archivo a varios dispositivos mediante el enlace o código QR de una sala compartida.
  • 05Recurre a un relay TURN cuando se bloquea la conexión directa.
  • 06Los destinatarios no necesitan instalar nada ni crear una cuenta; las salas pueden protegerse con contraseña.

Casos de uso

  • Enviar archivos grandes a un grupo de colegas o clientes sin subirlos a una nube de terceros.
  • Compartir archivos dentro de una red doméstica o de oficina, o entre distintas redes, mediante una instancia autohospedada.
  • Transferir archivos entre tu teléfono y tus computadoras mediante un navegador.

Inicio rápido

  1. 1

    Descarga deploy/docker-compose.yml del repositorio

  2. 2

    Inicia FileSync con Docker Compose

    docker compose up -d
  3. 3

    Abre http://localhost en el navegador de la máquina donde se ejecuta Docker

Antes de usarlo

  • La opción HTTP es solo para realizar pruebas locales rápidas y no está pensada para producción.
  • Con HTTP sin cifrar, los archivos recibidos se almacenan íntegramente en la memoria, por lo que las transferencias grandes pueden agotar la memoria.
  • Para usarlo en producción, necesitas HTTPS con tu propio dominio y una configuración de Caddy.
  • Debes abrir en el firewall los puertos 80/443 y 3478, además del rango UDP 50000–50100.

En colecciones

Temas

Preguntas frecuentes

¿Qué es FileSync?
Aplicación web autohospedada que envía archivos en tiempo real desde un navegador a muchos otros, de igual a igual mediante WebRTC y sin límite de tamaño. FileSync permite que un dispositivo comparta archivos con varios destinatarios a la vez. Quien envía crea una sala y comparte un enlace o código QR; los destinatarios lo abren en un navegador, sin instalar nada ni crear una cuenta. Las salas pueden protegerse con contraseña.
¿FileSync es gratuito? ¿Qué licencia tiene?
FileSync es open source bajo la licencia MIT. Revisa los términos de la licencia antes de usarlo en productos comerciales.
¿FileSync sigue mantenido?
Mantenimiento activo. El último commit de FileSync fue el 5 nov 2026.
¿Para qué puedo usar FileSync?
Enviar archivos grandes a un grupo de colegas o clientes sin subirlos a una nube de terceros. Compartir archivos dentro de una red doméstica o de oficina, o entre distintas redes, mediante una instancia autohospedada. Transferir archivos entre tu teléfono y tus computadoras mediante un navegador.
¿Cómo se instala FileSync?
Descarga deploy/docker-compose.yml del repositorio Inicia FileSync con Docker Compose: docker compose up -d Abre http://localhost en el navegador de la máquina donde se ejecuta Docker
¿Dónde consigo FileSync?
El código fuente y las instrucciones de instalación están en GitHub: https://github.com/polius/FileSync

Resumen generado por IA a partir del README del proyecto. Las estadísticas de GitHub se actualizan a diario.

Proyectos relacionados