Fast AniList Data Fetcher & Multi-Format Exporter (JSON, CSV, TXT, Markdown)
Extract, filter, and export your entire AniList anime collection into JSON, CSV (Excel/Sheets), TXT, and Markdown with automated rating & taste analysis.
Run directly with npx:
npx @l1e/anifetch <username>Or launch interactive mode (just open the tool!):
npx @l1e/anifetchOr install globally:
npm install -g @l1e/anifetch# 1. Fetch entire anime list and export to JSON
anifetch <username>
# 2. Export ONLY completed anime to JSON
anifetch <username> --completed --json
# 3. Export all anime into a CSV spreadsheet (Excel / Google Sheets)
anifetch <username> --all --csv
# 4. Export dropped anime to a plain-text report
anifetch <username> --dropped --txt
# 5. Export EVERYTHING into all 4 formats (JSON, CSV, TXT, Markdown) at once
anifetch <username> -f all
# 6. Filter by score: Only anime rated 85+ (or 8.5+)
anifetch <username> --min-score 85 --csv
# 7. Custom output destination folder
anifetch <username> -f all -o ./my-anime-data
# 8. Stream pure JSON to stdout (for piping to jq or webhooks)
anifetch <username> --json-stdout | jq .
# 9. Test extraction with built-in demo profile
anifetch --demo █████╗ ███╗ ██╗██╗███████╗███████╗████████╗ ██████╗██╗ ██╗
██╔══██╗████╗ ██║██║██╔════╝██╔════╝╚══██╔══╝██╔════╝██║ ██║
███████║██╔██╗ ██║██║█████╗ █████╗ ██║ ██║ ███████║
██╔══██║██║╚██╗██║██║██╔══╝ ██╔══╝ ██║ ██║ ██╔══██║
██║ ██║██║ ╚████║██║██║ ███████╗ ██║ ╚██████╗██║ ██║
╚═╝ ╚═╝╚═╝ ╚═══╝╚═╝╚═╝ ╚══════╝ ╚═╝ ╚═════╝╚═╝ ╚═╝
🌸 Fast AniList Data Fetcher & Multi-Format Exporter
For help and CLI options, run: anifetch --help
Username or command: <username>
Export format [json / csv / txt / md / all] (default: json) [ESC: back]: all
Filter status [all / completed / watching / dropped / planning] (default: all) [ESC: back]: all
[*] Fetching AniList collection for '<username>'...
🌸 Exported to: C:\Users\...\anifetch-output (<username>_anime_list.json, <username>_deep_analysis.json)
EXAMPLES:
anifetch <username> --completed --json Export completed anime to JSON
anifetch <username> --all --csv Export all anime to spreadsheet
anifetch <username> -f all Export to JSON, CSV, TXT & Markdown
Run 'anifetch --help' to see all options, filters & formats.
| Format | CLI Switch | Output Files | Description |
|---|---|---|---|
| JSON | -f json / --json |
<user>_anime_list.json<user>_deep_analysis.json |
Clean structured list with all titles, personal scores, progress, tags, studios, and complete metrics. |
| CSV | -f csv / --csv |
<user>_anime_list.csv<user>_genre_breakdown.csv<user>_studio_breakdown.csv |
Spreadsheets ready for Microsoft Excel, Numbers, or Google Sheets with CSV formula injection protection. |
| TXT | -f txt / --txt |
<user>_summary.txt |
Human-readable text report with status breakdowns, score histograms, hot takes, and full ASCII table. |
| Markdown | -f md / --md |
<user>_analysis_report.md |
GitHub-flavored Markdown report with formatted tables and direct AniList anime links. |
| ALL | -f all |
All 7 files | Generates all 4 formats simultaneously. |
USAGE:
anifetch Open interactive mode
anifetch <username> [options] Fetch profile data directly
npx anifetch <username> [options] Run via npx directly
OPTIONS & FLAGS:
-u, --username <name> AniList username to fetch (or pass as first argument)
-s, --status <status> Filter status: completed, watching, dropped, paused, planning, all (default: all)
-f, --format <format> Export format: json, csv, txt, md, all (default: json)
-o, --output <dir> Destination folder for files (default: ./anifetch-output)
-d, --demo Run test with sample demo profile (no internet required)
--min-score <number> Filter anime by minimum rating (e.g. --min-score 80 or --min-score 8)
--genre <genre> Filter anime by genre (e.g. --genre Action)
--sort <field> Sort by: score, title, episodes, date, popularity
--order <asc|desc> Sort order: asc or desc (default: desc)
--json-stdout Output pure JSON to stdout (disables banner and file writes)
-q, --quiet Quiet mode (suppress terminal messages)
-v, --version Show version number
-h, --help Show this help guide
SHORTHAND SWITCHES:
--completed, --watching, --dropped, --paused, --planning, --all
--json, --csv, --txt, --md
import { anifetch } from "@l1e/anifetch";
// Fetch and export programmatically
const result = await anifetch("l1e", {
status: "completed",
format: "all",
outputDir: "./output"
});
console.log("Total Fetched:", result.parsed.total_anime_count);
console.log("Exported Files:", result.exportedFiles);How do I export my AniList anime list to CSV / Excel?
Run npx @l1e/anifetch <username> --all --csv. This automatically downloads your full collection and generates 3 sanitized .csv spreadsheet files (Anime List, Genre Breakdown, Studio Breakdown) formatted for Microsoft Excel, Google Sheets, and Numbers.
How can I backup my AniList profile to JSON?
Run npx @l1e/anifetch <username> --json. You'll receive <username>_anime_list.json with all metadata, scores, and progress, plus <username>_deep_analysis.json containing mathematical taste analysis.
Do I need an AniList account token or API key?
No authentication or API key is required. anifetch queries AniList's public GraphQL endpoint directly using public usernames.
Are the CSV exports protected against spreadsheet formula injection?
Yes! anifetch automatically sanitizes cells starting with sensitive trigger characters (=, +, -, @) to prevent CSV formula injection attacks in Microsoft Excel and Google Sheets.
npm testanifetch is released under the GNU General Public License v3.0 (GPL-3.0).
Copyright © 2026 Liyfez (@l1e). All original architecture, parsing engines, analytics algorithms, and exporter implementations are created by and credited to Liyfez.
Under GPL-3.0, you are free to inspect, run, modify, and contribute to this project. Any derivative works or distributions must remain 100% open source under the exact same GPL-3.0 terms with complete credit and attribution to the original author.