Skip to content

hanserlodev/YourFreeDownloader

Repository files navigation

YourFreeDownloader - Proyecto Multiplataforma

Version License

📖 Descripción

YourFreeDownloader es un proyecto multiplataforma para descargar videos y audio de YouTube, disponible tanto para dispositivos móviles Android como para sistemas de escritorio Windows y Linux.

🎯 Plataformas Soportadas

  • 📱 Android (API 24+) - Aplicación móvil nativa
  • 🖥️ Windows (7/8/10/11) - Aplicación de escritorio
  • 🐧 Linux (Todas las distros) - Aplicación de escritorio

📂 Estructura del Proyecto

YourFreeDownloader/
│
├── 📱 mobile-android/              # Aplicación Android
│   ├── src/                        # Código fuente Android
│   ├── build.gradle.kts            # Configuración Gradle
│   └── README.md                   # Documentación Android
│
├── 🖥️ desktop-multiplatform/       # Aplicación de Escritorio (Win/Linux)
│   ├── src/                        # Código fuente Python
│   │   └── yt-downlader.py         # Aplicación principal
│   ├── scripts/                    # Scripts de compilación y ejecución
│   │   ├── build-linux.sh          # Compilar para Linux
│   │   ├── build-windows.bat       # Compilar para Windows
│   │   ├── run-linux.sh            # Ejecutar en Linux
│   │   └── run-windows.bat         # Ejecutar en Windows
│   ├── config/                     # Archivos de configuración
│   ├── docs/                       # Documentación
│   ├── resources/                  # Recursos (iconos, etc.)
│   ├── requirements.txt            # Dependencias Python
│   └── README.md                   # Documentación Desktop
│
├── 📦 shared/                      # Código compartido (futuro)
│   └── (código común entre plataformas)
│
├── build.gradle.kts                # Configuración Gradle raíz (Android)
├── settings.gradle.kts             # Configuración del proyecto Android
├── gradle.properties               # Propiedades Gradle
└── README.md                       # Este archivo

🚀 Inicio Rápido

Para la Aplicación de Escritorio (Windows/Linux)

⭐ Forma Más Fácil (Linux):

./start.sh

Este script automáticamente configura todo y ejecuta la aplicación.

Métodos Alternativos:

Linux:

cd desktop-multiplatform
./scripts/run-linux.sh    # Ejecutar directamente
./scripts/build-linux.sh  # Compilar ejecutable

Windows:

cd desktop-multiplatform
scripts\run-windows.bat    REM Ejecutar directamente
scripts\build-windows.bat  REM Compilar ejecutable

⚠️ Importante para Linux:

  • NO ejecutes: pip install customtkinter directamente (causará errores en sistemas modernos)
  • USA: Los scripts proporcionados que manejan entornos virtuales automáticamente
  • Ver: TROUBLESHOOTING_LINUX.md si tienes problemas

Para la Aplicación Móvil Android

cd mobile-android
./gradlew assembleDebug

O abre el proyecto mobile-android en Android Studio.

✨ Características

Aplicación de Escritorio

  • 🎨 Interfaz gráfica moderna con CustomTkinter
  • 🌓 Tema oscuro/claro
  • 📥 Descarga de videos en múltiples calidades
  • 🎵 Extracción de audio MP3
  • 📊 Progreso en tiempo real
  • 💾 Configuración persistente

Aplicación Móvil

  • 📱 Interfaz nativa Android
  • 📥 Descarga directa en dispositivo
  • 🎵 Extracción de audio
  • 💾 Gestión de descargas

🔧 Requisitos

Aplicación de Escritorio

  • Python 3.8+
  • Tk/Tcinter (para interfaz gráfica en Linux)
    • Arch: sudo pacman -S tk
    • Ubuntu/Debian: sudo apt install python3-tk
    • Fedora: sudo dnf install python3-tkinter
  • FFmpeg (opcional, para conversión de audio)
  • Conexión a Internet

Aplicación Móvil

  • Android Studio
  • JDK 11
  • Android SDK API 36
  • Dispositivo/Emulador con Android 7.0+

📚 Documentación Detallada

🛠️ Desarrollo

Compilar para todas las plataformas:

Desktop - Linux:

cd desktop-multiplatform/scripts
./build-linux.sh

Desktop - Windows:

cd desktop-multiplatform\scripts
build-windows.bat

Móvil - Android:

cd mobile-android
./gradlew assembleRelease

🤝 Contribuciones

Las contribuciones son bienvenidas. Por favor:

  1. Fork el proyecto
  2. Crea una rama para tu feature (git checkout -b feature/AmazingFeature)
  3. Commit tus cambios (git commit -m 'Add some AmazingFeature')
  4. Push a la rama (git push origin feature/AmazingFeature)
  5. Abre un Pull Request

📄 Licencia

Este proyecto está bajo la Licencia MIT. Ver archivo LICENSE para más detalles.

👤 Autor

HanserlodXP

🙏 Agradecimientos

🗺️ Roadmap

  • Mejoras en la UI de Android
  • Sincronización de descargas entre dispositivos
  • Soporte para más plataformas de video
  • Sistema de colas de descarga mejorado
  • Versión para macOS
  • Integración con servicios en la nube

📞 Soporte

Si encuentras algún problema o tienes sugerencias, por favor abre un issue en GitHub.


⭐ Si te gusta este proyecto, ¡dale una estrella en GitHub!

🔄 Última actualización: Febrero 2026

About

YourFreeDownloader is an open source project that aims to create an app that downloads videos from YouTube without using annoying and invasive ads.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors