mirror of
https://github.com/arkorty/DownLink.git
synced 2026-03-18 00:57:15 +00:00
Add a README
This commit is contained in:
90
README.md
Normal file
90
README.md
Normal file
@@ -0,0 +1,90 @@
|
|||||||
|

|
||||||
|
|
||||||
|
# DownLink
|
||||||
|
|
||||||
|
DownLink is a web application that allows users to download YouTube videos from URLs using a simple interface. This repository contains the code for both the frontend and backend of the application.
|
||||||
|
|
||||||
|
## Table of Contents
|
||||||
|
|
||||||
|
- [Features](#features)
|
||||||
|
- [Technologies](#technologies)
|
||||||
|
- [Setup](#setup)
|
||||||
|
- [Prerequisites](#prerequisites)
|
||||||
|
- [Installation](#installation)
|
||||||
|
- [Usage](#usage)
|
||||||
|
- [API Endpoints](#api-endpoints)
|
||||||
|
- [Contributing](#contributing)
|
||||||
|
- [License](#license)
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- Download YouTube videos from a provided URL.
|
||||||
|
- Choose video quality (480p, 720p, 1080p) before downloading.
|
||||||
|
- Responsive UI built with React and Tailwind CSS.
|
||||||
|
- Backend API built with Go and the Echo framework.
|
||||||
|
- Utilizes yt-dlp for downloading and ffmpeg for converting files.
|
||||||
|
|
||||||
|
## Technologies
|
||||||
|
|
||||||
|
- **Frontend**: React, Axios, Tailwind CSS
|
||||||
|
- **Backend**: Go, Echo, yt-dlp, ffmpeg
|
||||||
|
- **Containerization**: Docker, Docker Compose
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
### Prerequisites
|
||||||
|
|
||||||
|
- Docker
|
||||||
|
- Docker Compose
|
||||||
|
- Node.js and npm (for frontend development)
|
||||||
|
- Python 3 (for `yt-dlp` and `ffmpeg`)
|
||||||
|
|
||||||
|
### Installation
|
||||||
|
|
||||||
|
1. **Clone the repository:**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
git clone https://github.com/arkorty/downlink.git
|
||||||
|
cd downlink
|
||||||
|
```
|
||||||
|
|
||||||
|
2. **Set up environment variables:**
|
||||||
|
|
||||||
|
Create a `.env` file in the root of the frontend directory and add the following:
|
||||||
|
|
||||||
|
```env
|
||||||
|
REACT_APP_BACKEND_URL=http://localhost:8080
|
||||||
|
```
|
||||||
|
|
||||||
|
3. **Run the application using Docker Compose:**
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker-compose up --build
|
||||||
|
```
|
||||||
|
|
||||||
|
This command will build and start the Docker containers for the frontend and backend.
|
||||||
|
|
||||||
|
4. **Access the application:**
|
||||||
|
|
||||||
|
Open your browser and navigate to `http://localhost:3000` to access the frontend. The backend API will be available at `http://localhost:8080`.
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
### Downloading a Video
|
||||||
|
|
||||||
|
1. Enter the video URL and select the desired quality in the form on the homepage.
|
||||||
|
2. Click the "Download" button.
|
||||||
|
3. The video will be processed and downloaded to your device.
|
||||||
|
|
||||||
|
## API Endpoints
|
||||||
|
|
||||||
|
- **GET `/downlink/`**: Check if the backend is running.
|
||||||
|
- **POST `/downlink/download`**: Submit a request to download and merge video and audio. Requires JSON body with `url` and `quality` fields.
|
||||||
|
|
||||||
|
## Contributing
|
||||||
|
|
||||||
|
We welcome contributions to DownLink! If you have suggestions, bug fixes, or new features, feel free to open an issue or submit a pull request. Thank you for helping improve DownLink!
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
|
||||||
BIN
blob/downlink.png
Normal file
BIN
blob/downlink.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 24 KiB |
Reference in New Issue
Block a user