This project is a YouTube Downloader API built with FastAPI for the backend and React for the frontend. It allows users to download YouTube videos in various formats.
Clone the repository:
sh
git clone https://github.com/RohanCyberOps/YoutubeDL.git
cd YoutubeDL
Set up the backend:
sh
python -m venv .venv
source .venv/bin/activate # On Windows use `.venv\Scripts\activate`
pip install -r src/server/requirements.txt
Set up the frontend:
sh
cd src/app
npm install
Start the backend server:
sh
source .venv/bin/activate # On Windows use `.venv\Scripts\activate`
uvicorn src/server/main:app --host 127.0.0.1 --port 8000
Start the frontend server:
sh
cd src/app
npm run dev
GET /: Welcome message.POST /download: Download a YouTube video.GET /download/{file_id}: Serve the downloaded file.To download a video, send a POST request to /download with the following JSON body:
{
"url": "https://youtu.be/your_video_id",
"format": "video"
}
The project uses GitHub Actions for continuous integration and deployment. The workflow is defined in .github/workflows/main.yml.
git checkout -b feature-branch).git commit -m 'Add some feature').git push origin feature-branch).This project is licensed under the MIT License. See the LICENSE file for details.
For any inquiries, please contact RohanCyberOps.