Goanime

module
v1.6.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 19, 2026 License: MIT

README

English | Рortuguês

Imagem logo

GitHub license GitHub stars GitHub stars GitHub stars Build Status GitHub contributors Codacy Badge Build Status Discord

GoAnime

GoAnime is a simple text-based user interface (TUI) built in Go, allowing users to search for anime and either play or download episodes directly in mpv. It scrapes data from websites to provide a selection of anime and episodes, with support for both subbed and dubbed content in English and Portuguese.

Mobile Version

A mobile version of GoAnime is available for Android devices: GoAnime Mobile

Note: This version is under active development and may contain bugs or incomplete features.

Community

Join our Discord for support, feedback, and updates: Discord Server

Features

  • Search for anime by name
  • Browse episodes
  • Support subbed and dubbed content in English and Portuguese
  • Skip anime Intro
  • Play online with quality selection
  • Download single episodes
  • Discord RPC about the anime
  • Batch download multiple episodes
  • Resume playback from where you left off (in builds with SQLite support)
  • Track watched episodes (in builds with SQLite support)
  • NEW: Movies and TV Shows support via FlixHQ source
  • NEW: OMDb integration for movie/TV metadata (ratings, genres, runtime)

Note: GoAnime can be built with or without SQLite support for tracking anime progress.
See the build options documentation for more details.

⚠️ Warning: Portuguese (PT-BR) source availability

If you want to watch anime in Portuguese (PT-BR) and you are outside Brazil, you'll need a VPN, proxy, or any method to obtain a Brazilian IP address. The PT-BR provider blocks access from IPs outside Brazil.

...existing code...

Demo

https://github.com/alvarorichard/GoAnime/assets/88117897/ffec6ad7-6ac1-464d-b048-c80082119836

Prerequisites

  • Go (at latest version)

  • Mpv(at latest version)

how to install and run

go install github.com/alvarorichard/Goanime/cmd/goanime@latest

...existing code...

Manual install methods
git clone https://github.com/alvarorichard/GoAnime.git
cd GoAnime
go run cmd/goanime/main.go

Movies and TV Shows

GoAnime supports movies and TV shows through the FlixHQ source. Use the --source flixhq flag to search for movies and TV shows. You can also restrict results by type using the --type parameter (for example --type movie to search only movies).

# Search for movies/TV shows
goanime --source flixhq "The Matrix"

# Search specifically for movies
goanime --source flixhq --type movie "Inception"

# Search specifically for TV shows
goanime --source flixhq --type tv "Breaking Bad"

# Enable subtitles (English by default)
goanime --source flixhq --subs "Avatar"

Linux

Arch Linux / Manjaro (AUR-based systems)

Using Yay:

yay -S goanime

or using Paru:

paru -S goanime

Or, to manually clone and install:

git clone https://aur.archlinux.org/goanime.git
cd goanime
makepkg -si
sudo pacman -S mpv
Debian / Ubuntu (and derivatives)
sudo apt update
sudo apt install mpv

# For x86_64 systems:
curl -Lo goanime https://github.com/alvarorichard/GoAnime/releases/latest/download/goanime-linux

chmod +x goanime
sudo mv goanime /usr/bin/
goanime
Fedora Installation
sudo dnf update
sudo dnf install mpv

# For x86_64 systems:
curl -Lo goanime https://github.com/alvarorichard/GoAnime/releases/latest/download/goanime-linux

chmod +x goanime
sudo mv goanime /usr/bin/
goanime
openSUSE Installation
sudo zypper refresh
sudo zypper install mpv

# For x86_64 systems:
curl -Lo goanime https://github.com/alvarorichard/GoAnime/releases/latest/download/goanime-linux

chmod +x goanime
sudo mv goanime /usr/bin/
goanime

Windows

Windows Installation

Strongly Recommended: Use the installer for the best experience on Windows.

Option 1: Using the installer (Recommended)

Option 2: Standalone executable

  • Download the appropriate executable for your system from the latest release

macOS

macOS Installation

First, install mpv using Homebrew:

# Install Homebrew if you haven't already
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

# Install mpv
brew install mpv

# Download and install GoAnime
curl -Lo goanime https://github.com/alvarorichard/GoAnime/releases/latest/download/goanime-apple-darwin

chmod +x goanime
sudo mv goanime /usr/local/bin/
goanime

Alternative installation using MacPorts:

# Install mpv using MacPorts
sudo port install mpv

# Download and install GoAnime
curl -Lo goanime https://github.com/alvarorichard/GoAnime/releases/latest/download/goanime-apple-darwin

chmod +x goanime
sudo mv goanime /usr/local/bin/
goanime
Additional Setup Steps

NixOS install (Flakes)

Temporary Run

nix github:alvarorichard/GoAnime

Install

Add in your flake.nix:

 inputs.goanime.url = "github:alvarorichard/GoAnime";

Pass inputs to your modules using specialArgs and Then in configuration.nix:

environment.systemPackages = [
  inputs.goanime.packages.${pkgs.system}.GoAnime
];
Usage in Linux and macOS
go-anime
Usage in Windows
goanime
Advanced Usage

You can also use parameters to search for and play anime directly. Here are some examples:

  • To search for and play an anime directly, use the following command:
goanime  "anime name"
  • To update GoAnime to the latest version, use the update flag:
goanime --update

This command will automatically download and install the latest version of GoAnime using Go's built-in update mechanism.

You can use the -h or --help option to display help information about how to use the goanime command.

goanime -h

The program will prompt you to input the name of an anime. Enter the name of the anime you wish to watch.

The program will present a list of anime which match your input. Navigate the list using the arrow keys and press enter to select an anime.

The program will then present a list of episodes for the selected anime. Again, navigate the list using the arrow keys and press enter to select an episode.

The selected episode will then play in mpv media player.

Thanks

@KitsuneSemCalda,@RushikeshGaikwad and @the-eduardo for help and improve this application

Alternatives

If you're looking for more options, check out this alternative project by my friend @KitsuneSemCalda called Animatic-v2, which was inspired by GoAnime.

Contributing

Contributions to improve or enhance are always welcome. Before contributing, please read our comprehensive development guide for detailed information about our workflow, coding standards, and project structure.

📖 Development Guide - Essential reading for contributors

Quick Start for Contributors:

  1. Fork the Project
  2. Read the Development Guide thoroughly
  3. Create your Feature Branch from dev (never from main)
  4. Follow our coding standards (use go fmt, add meaningful comments)
  5. Ensure all tests pass and add tests for new features
  6. Commit your Changes using conventional commit format
  7. Push to the Branch
  8. Open a Pull Request to the dev branch

Important: Never commit directly to the main branch. All changes must go through the dev branch first.

Directories

Path Synopsis
cmd
goanime command
internal
api
Package api provides enhanced episode URL fetching with AllAnime navigation support
Package api provides enhanced episode URL fetching with AllAnime navigation support
api/movie
Package movie provides media enrichment functions for movies and TV shows
Package movie provides media enrichment functions for movies and TV shows
download
Package download provides high-level download workflow management
Package download provides high-level download workflow management
handlers
Package handlers provides HTTP handlers and flow controllers for media playback
Package handlers provides HTTP handlers and flow controllers for media playback
models
Package models contains anime-specific data structures
Package models contains anime-specific data structures
playback
Package playback provides episode navigation for AllAnime source
Package playback provides episode navigation for AllAnime source
scraper
Package scraper provides web scraping functionality for anime sources
Package scraper provides web scraping functionality for anime sources
scraper/movie
Package scraper provides web scraping functionality for FlixHQ movies and TV shows
Package scraper provides web scraping functionality for FlixHQ movies and TV shows
tracking
tracking/sqlite_tracker.go
tracking/sqlite_tracker.go
util
Package util provides shared HTTP client with connection pooling and caching
Package util provides shared HTTP client with connection pooling and caching
pkg
goanime
Package goanime provides a public API for anime scraping and searching functionality.
Package goanime provides a public API for anime scraping and searching functionality.
goanime/examples/episodes command
Example: Get episodes for a specific anime
Example: Get episodes for a specific anime
goanime/examples/search command
Example: Basic anime search using GoAnime library
Example: Basic anime search using GoAnime library
goanime/examples/source_specific command
Example: Search in specific source
Example: Search in specific source
goanime/examples/stream command
Example: Get stream URL for an episode
Example: Get stream URL for an episode
goanime/types
Package types provides public type definitions for the goanime library
Package types provides public type definitions for the goanime library

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL