Skip to content
master
Switch branches/tags
Code

mangadesk - Terminal client for MangaDex πŸ“–

Top Language License Go Report Downloads

Download manga directly from your terminal to read!

demo.gif

This client retrieves information straight from MangaDex v5's API.
As the API is still a WIP, some changes (probably breaking) might be expected.

Features ✨

  • Download chapters straight to your computer.
  • Login to keep track of your followed manga.
  • Keep track of already downloaded manga.
  • Download multiple chapters together.
  • Searching!
  • Responsive UI (kind of)
  • Written in Golang :)

Works for Windows/Linux/macOS.

Installation πŸ”§

This application runs as a standalone executable, and does not install itself.

Check out the releases page for relevant files. To update, just download the latest release.

For bleeding edge πŸ—‘ updates, you may compile from source:

git clone https://github.com/darylhjd/mangadesk.git
cd mangadesk
go get -d ./...
go build

NOTE: The application will create a usr folder to store your credentials/configurations. This folder is located in the same directory as where you run the application.

Uninstall ❌

To uninstall, simply delete the executable and its related folders and files (namely, the usr folder).

Your downloads will not be removed by deleting the executable.

Usage ✍

To run the application, navigate to the directory where you stored the executable, and run the following command:

$ ./mangadesk 

Steps may differ for different OSes. For example, in Windows, use a forward slash \ instead.

Keybindings ⌨

Operation Binding Page
Login/Logout Ctrl + L All
Keybindings/Help Ctrl + K All
Search Ctrl + S All
Next/Prev Page Ctrl + F/B Some
Escape Esc Some
Select multiple chapters Ctrl + E Manga Page
Toggle select all Ctrl + A Manga Page

Settings βš™

You may change the appropriate settings in the usr_config.json file, which is stored in the usr folder.

Download Folder

  • downloadDir

By default, all downloads are stored in a folder titled downloads.

You can change this by changing the downloadDir field.

Languages

  • langauges

By default, only English (en) translated chapters are shown.

You may change your desired language(s) through the languages field. Please use comma-separated ISO language codes.

Download Quality

  • downloadQuality

Valid options are data (high quality) and data-saver (lower quality).

Any other empty/invalid option will default to data.

Force Port 443

  • forcePort443

Valid options are true or false. It is false by default.

Set to true if you are having trouble downloading or are using networks that block traffic to non-standard ports (such as school/office networks). More info.

Issues ☠

Check out the Issues page for current issues/feature requests.

Contributing 🀝

Always welcome and appreciated :)

Please take some time to familiarise yourself with the contributing guidelines.

Learning points 🧠

  • Creating TUIs with tview/tcell.
  • Working with the filesystem in Golang.
  • Goroutines & Context.
  • Go Project structure.