Hydra is a game launcher with its own embedded bittorrent client and a self-managed repack scraper.
![Hydra Catalogue](./docs/screenshot.png)
## Table of Contents
- [About](#about)
- [Features](#features)
- [Installation](#installation)
- [Contributing](#contributing)
- [Running](#running)
- [Build](#build)
## About
**Hydra** is a **Game Launcher** with its own embedded **BitTorrent Client** and a **self-managed repack scraper**.
The launcher is written in TypeScript (Electron) and Python, which handles the torrenting system by using libtorrent.
## Features
- Self-Managed repack scraper among all the most reliable websites on the [Megathread]("https://www.reddit.com/r/Piracy/wiki/megathread/")
- Own embedded bittorrent client
- How Long To Beat (HLTB) integration on game page
- Downloads path customization
- Repack list update notifications
- Windows, Linux and MacOS support
- Constantly updated
- And more ...
## Installation
Follow the steps below to install:
1. Download the latest version of Hydra from the [Releases](https://github.com/hydralauncher/hydra/releases/latest) page.
- Download only .exe if you want to install Hydra on Windows.
- Download .deb or .rpm or .zip if you want to install Hydra on Linux. (depends on your Linux distro)
2. Run the downloaded file.
3. Enjoy Hydra!
## Contributing
### Join our Discord
We concentrate our discussions on our [Discord](https://discord.gg/hydralauncher) server.
Join, grab the Collaborator role, go the dev channel and we talk to us and share your ideas.
### Install Node.js
Ensure you have Node.js installed on your machine. If not, download and install it from [nodejs.org](https://nodejs.org/).
### Install Yarn
Yarn is a package manager for Node.js. If you haven't installed Yarn yet, you can do so by following the instructions on [yarnpkg.com](https://classic.yarnpkg.com/lang/en/docs/install/).
### Clone the Repository
```bash
git clone https://github.com/hydralauncher/hydra.git
```
### Install Node Dependencies
Navigate to the project directory and install the Node dependencies using Yarn:
```bash
cd hydra
yarn
```
### Install Python 3.9
Ensure you have Python 3.9 installed on your machine. You can download and install it from [python.org](https://www.python.org/downloads/release/python-3919/).
### Install Python Dependencies
Install the required Python dependencies using pip:
```bash
pip install -r requirements.txt
```
## Environment variables
You'll need an SteamGridDB API Key in order to fetch the game icons on installation.
If you want to have onlinefix as a repacker you'll need to add your credentials to the .env
Once you have it, you can paste the `.env.example` file and put it on `STEAMGRIDDB_API_KEY`, `ONLINEFIX_USERNAME`, `ONLINEFIX_PASSWORD`.
## Running
Once you've got all things set up, you can run the following command to start both the Electron process and the bittorrent client:
```bash
yarn dev
```
## Build
### Build the bittorrent client
Build the bittorrent client by using this command:
```bash
python torrent-client/setup.py build
```
### Build the Electron application
Build the Electron application by using this command:
On Windows:
```bash
yarn build:win
```
On Linux:
```bash
yarn build:linux
```
## Contributors
Made with [contrib.rocks](https://contrib.rocks).
## License
Hydra is licensed under the [MIT License](LICENSE).