2.4 KiB
2.4 KiB
type, status, source, repo, repo_url, language, branch, tags, updated
| type | status | source | repo | repo_url | language | branch | tags | updated | ||
|---|---|---|---|---|---|---|---|---|---|---|
| project | active | git.alwisp.com | jason/nyaa-crawler | https://git.alwisp.com/jason/nyaa-crawler | TypeScript | main |
|
2026-05-29 |
nyaa-crawler
Repository: jason/nyaa-crawler · branch main · TypeScript
Summary
Dockerized Nyaa.si anime torrent crawler — tracks shows, polls RSS for new episodes, and auto-downloads torrent files with a dark-themed web UI and SQLite persistence
Current status
Active. Synced from Gitea on 2026-05-29.
Documentation overview
nyaa-crawler
A dockerized torrent crawler and downloader for Nyaa.si. Track anime shows, poll for new episodes via RSS, and automatically download .torrent files to a host-mounted directory.
Features
- Search Nyaa.si and add shows to a watch list
- Automatic polling for new episodes (configurable interval, default 15 min)
- Auto-downloads
.torrentfiles to a mapped host directory - Track episode status: pending, auto-downloaded, or manually marked
- Bulk-mark episodes as already downloaded
- Minimal dark-themed web UI
- SQLite persistence — easy to back up and migrate
- Unraid-friendly Docker container
Stack
- Backend: Node.js + TypeScript + Express
- Frontend: React + Vite
- Database: SQLite (
better-sqlite3) - Scheduler:
node-cron - Nyaa integration: RSS via
fast-xml-parser
Quick Start (Docker)
docker compose up -d
Open http://localhost:8082 in your browser.
Quick Start (Development)
npm install
npm run dev
- Client dev server:
http://localhost:5173(proxies/apito:3000) - API server:
http://localhost:3000
Environment Variables
| Variable | Default | Description |
|---|---|---|
PORT |
3000 |
HTTP port |
POLL_INTERVAL_SECONDS |
900 |
Polling frequency (min 60) |
TORRENT_OUTPUT_DIR |
./data/torrents |
Where .torrent files are saved |
DATABASE_PATH |
./data/db.sqlite |
SQLite database path |
Unraid Deployment
services:
nyaa-watcher:
image: your-registry/nyaa-watcher:latest
container_name: nyaa-watcher
restart: unless-stopped
environment:
- PORT=3000
- POLL_INTERVAL_SECONDS=900
- TORRENT_OUTPUT_DIR=/data/torrents
- DATABASE_PATH=/data/db.sqlite
volumes:
…(truncated — see repo)
## Notes
- Project file auto-created from repo documentation.