hosted-demo-short-3.mp4
Important
It is with great gratitude that I maintain a clone of one of the most legendary websites to ever exist. While its existence is now history, we honor it, as its spirit has inspired many other projects, including this one. IFPI took down a tool, but never the spirit.
1. Clone the repository
git clone --recurse-submodules https://github.com/Simatwa/y2mate-clone.git
cd y2mate-clone2. Set up the backend
The backend is powered by Youtube-Downloader-API. Install its dependencies using uv:
cd backend
pip install uv
uv venv
source .venv/bin/activate
uv syncTip
Keep yt-dlp updated to avoid download failures caused by YouTube-side changes:
uv pip install -U yt-dlp3. Start the backend server
# While in backend directory
uv run python -m app run4. Start the frontend server
On a separate terminal tab, from the root directory of the project:
cd frontend
python -m http.server 8080 -d frontendThe web interface will be accessible at http://localhost:8080.
Tip
A live demo is available at https://y2mate-clone.vercel.app. Change the Base URL of the API to point to your own instance and enjoy the service.
- Navigate to the backend directory:
cd backend- Set the
frontend_dirkey inconfig.ymlto point to the frontend directory:
frontend_dir = ../frontend- Start the server:
uv run python -m app runBoth the API and frontend will now be served from http://localhost:8000.
Note
Check out Youtube-Downloader-API for full documentation on configuring and customizing the REST API backend.

