A fullstack application built with FastAPI (Python) and React (TypeScript) that allows users to download videos from Facebook via yt-dlp
.
⚠️ This project is for educational purposes only. Downloading videos without permission from the content owner may violate terms of service and copyright laws.
- 🧠 Built with FastAPI backend and React frontend
- ⏳ Shows real-time download progress
- 💾 Auto-merges video + audio using FFmpeg
- 🌐 CORS enabled for local development
- Python 3.8+
- Node.js 16+
ffmpeg
installed and available in system PATHyt-dlp
(installed via pip)- React (TypeScript)
git clone https://github.com/umandalroald/facebook-downloader.git
cd facebook-downloader
cd fb-downloader
python -m venv venv
source venv/bin/activate # or .\venv\Scripts\activate on Windows
pip install -r requirements.txt
- macOS:
brew install ffmpeg
- Ubuntu/Debian:
sudo apt install ffmpeg
- Windows: Download here, add
bin/
to system PATH
uvicorn main:app --reload --port 8000
If your React app is inside client/
or frontend/
, go there. Otherwise:
cd frontend # or wherever your React app is
npm install
npm start
It will run on http://localhost:3000
by default.
This tool is intended for educational use only.
Downloading videos from Facebook or other platforms may:
- Violate their Terms of Service
- Infringe on copyright law
- Result in your account being suspended or legal action
You are solely responsible for how you use this software.
- Deploy to production with HTTPS
- Add YouTube/TikTok support
- User authentication
- Download queue and history
This project is licensed under the MIT License.