Project state: Pre-Alpha
Gucken is a Terminal User Interface which allows you to browse and watch your favorite anime's with style.
Windows
Install Python and if you are on Windows 10 Windows Terminal for a better experience.
pip install gucken
gucken
Android
Install Termux and run:
yes|pkg update
pkg install python ffmpeg -y
pip install gucken
gucken
Install Termux:Widget.
mkdir ~/.shortcuts
echo gucken>~/.shortcuts/Gucken
echo pip install -U gucken>~/.shortcuts/Update\ Gucken
If you want a custom font then just pace the ttf in ~/.termux/font.ttf
. Recommended fonts: Nerd fonts (Only use Mono fonts!)
Setup storage for downloads. (Default download location: /data/data/com.termux/files/home/storage/movies
)
termux-setup-storage
- Update checker
- Language priority list
- Hoster priority list
- Automatically use working hoster
- Browsing
- Descriptions
- Watching
- Trailer
- Automatically start next episode
- Discord Presence Very WIP
- MPV only
- Tracker support
- Downloading
- Watch from download
List of supported Anime sites
- AniWorld.to & SerienStream.to
- Filme
- bs.to
- www3.streamcloud.info
- www.crunchyroll.com
- Add some from International Piracy Sites German
List of supported video hoster.
- VEO
- Vidoza
- Doodstream
- SpeedFiles
- Vidmoly
- Streamtape (Removed from AniWorld & SerienStream)
- Filemoon
- Luluvdo
List of supported video players
- MPV (most features, recommended)
- VLC
- ffplay
- Custom
- Windows
- mpv.net
- wmplayer.exe (fallback on Windows)
- Android
- mpv-android
- VLC
- Choose
- Linux (Flatpack)
- Linux
- MacOS
For power users only
Place your custom CSS in user_config_path("gucken").joinpath("custom.css")
and it will be automatically loaded by Gucken.
speedups
(with:gucken[speedups]
)- Faster fuzzy sort/search. (
levenshtein
) - Faster json parsing. (
orjson
)
- Faster fuzzy sort/search. (
socks
- SOCKS proxy support. (with:gucken[socks]
)
- Proxy support
Proxies can easiely be implented
for the http client in python
AsyncClient(proxy="http://...")
for the player mpv Note: mpv dos not support socks5
--http-proxy=<proxy>
FFmpeg: env.http_proxy
ytdl: --ytdl-raw-options=proxy=
yt-dlp
--proxy URL
- Tor as proxy
AniWorld.to need Cloudflare captcha and JS challange
SerienStream.to can be bypassed by using diract ip
Cloudflare captcha and JS challange can be solved by using something like
selenium or playwright
- DoH support
- Reverse proxy for player
- DoH
- proxy
- Add hotkey to clear cache (F5)
- Translation DE, EN
- Improve settings design
- Merge SerienStream.to and AniWorld.to search results
- Focus window on autoplay popup
- Utilize next and previous buttons in mpv
- Chapters for VLC
- Window in settings menu to show where files are located (data, logs, config, downloads)
- s.to, aniworld.to scrape episode description
- Search in episodes
- Next and Cancel hotkeys
- Show hotkeys in Footer
- Create shortcut Windows & Linux
- Installation helper
- Colors themes
- Pre-fetching
- More threads and asyncio.gather to make everything faster
- More Caching
- Reuse Client
- Do unescape and stripe only on render
- Dont coppy code from SerienStream.to to AniWorld.to
- BIG CODE CLEANUP
- Update checker option to perform update
- Watchlist
- New anime/series Notifications
- Image preview (Kitty protocol, iterm protocol, Sixel, textual-web)
- Use something like opencv to time match a sub from aniworld with a high quality video form another site.
- Nix package
- Docker image
- Flatpack package
- Detect existing chapters and use them for skip
- Reverse proxy for players that do not support headers
- Up-scaling (after download)
- Modular (Custom extractors/players, open API)
- More CLI args
- MPV Screen selection
- Custom player args
- Custom player
- Anime4k options
- Mac support
- IOS support
- Support textual-web
- Syncplay on Android
- Improve Flatpack support
- Improve Snap support
- Proper error handling
- Logging and Crash reports
- Blacklist detection & bypass
- 404 detection inside Hoster and don't crash whole program on http error + crash reports/logs
- CI Testing (Windows, Linux)