https://github.com/frixaco/anitrack
My little CLI tool to watch anime from my favorite sources (in 4K)
https://github.com/frixaco/anitrack
golang nextjs postgres railway react react-query turborepo typescript vercel webscraper
Last synced: 2 months ago
JSON representation
My little CLI tool to watch anime from my favorite sources (in 4K)
- Host: GitHub
- URL: https://github.com/frixaco/anitrack
- Owner: frixaco
- Created: 2024-03-23T22:53:28.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-07-14T19:49:40.000Z (12 months ago)
- Last Synced: 2025-07-14T23:52:08.607Z (12 months ago)
- Topics: golang, nextjs, postgres, railway, react, react-query, turborepo, typescript, vercel, webscraper
- Language: TypeScript
- Homepage:
- Size: 8.89 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Anitrack - Simple TUI to stream anime
The project has been ported multiple times as I kept exploring different technologies for fun:
- Next.js app (auth, search, tracker, stream, etc.)
- Go TUI using Bubbletea
- Python TUI using Textual
- `letui` TUI - my own TUI library written from scratch using TypeScript (Bun) and Rust
### Bun+Rust TUI
1. Install Bun (recommended) or Node
2. Install [mpv](github.com/mpv-player/mpv) player.
3. (Optional) On desktop, set up **Anime4K** anime upscaler for **mpv**: https://github.com/bloc97/anime4k
4. `bunx @frixaco/anitrack`
Status: almost finished
### Releasing
Preferred flow uses GitHub Actions.
1. Update `version` in `package.json`
2. Commit and push that change to `main`
3. Create and push a matching tag:
- `git tag -a v0.1.1 -m "v0.1.1"`
- `git push origin v0.1.1`
4. GitHub Actions workflow `.github/workflows/npm-publish.yml` will publish to npm
Notes:
- Tag must point at the commit containing the new `package.json` version
- Tag name should match package version, e.g. `v0.1.1` -> `0.1.1`
- Publishing requires `NPM_TOKEN` configured in GitHub repo secrets
- If that version already exists on npm, publish will fail
Manual fallback:
1. Log in: `bunx npm login`
2. Publish: `npm publish --access public`
### Python TUI
1. Install `uv` (https://docs.astral.sh/uv/getting-started/installation/)
2. Install [mpv](github.com/mpv-player/mpv) player.
3. (Optional) On desktop, set up **Anime4K** anime upscaler for **mpv**: https://github.com/bloc97/anime4k
4. Run `uv tool install frixa-anitrack`
5. Run `anitrack`
NOTE: to try without installing, run `uv tool run --from frixa-anitrack anitrack` or `uvx --from frixa-anitrack anitrack`
Status: finished.
### Go TUI
1. Install Go. I used +1.23.
2. Install [mpv](github.com/mpv-player/mpv) player.
3. (Optional) On desktop, set up **Anime4K** anime upscaler for **mpv**: https://github.com/bloc97/anime4k
4. Run `go install github.com/frixaco/anitrack@latest` or download the binary from releases
Status: finished.
### Next.js
Fully functional, but requires setting up environment variables and services.
Status: abandoned.
### Rust TUI
Explored scraping HTML pages a bit. Don't plan to continue for the time being.
Status: dormant.