Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

564 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ani2arr icon

ani2arr

One-click Sonarr, Radarr, and Seerr actions for AniList and AniChart.

Firefox Add-on Chrome Web Store Release 2.1.0
CI Languages: en | ja License GPL-3.0-only

What is ani2arr?

ani2arr is a browser extension that adds Sonarr, Radarr, and Seerr actions directly to AniList and AniChart.

It is built for self-hosted media users who browse anime on AniList or AniChart and want to add or request media without copying titles, IDs, or metadata by hand.

Features

  • Adds Sonarr, Radarr, and Seerr actions to AniList anime pages, AniList browse, and AniChart.
  • Adds AniList TV entries to Sonarr.
  • Adds AniList movie entries to Radarr.
  • Adds optional Seerr request actions for request-based workflows.
  • Shows Seerr request status such as requested, processing, partially available, or available.
  • Supports Seerr target selection when the automatic TMDB target is missing, wrong, or ambiguous.
  • Uses AniList metadata and public AniBridge mappings to improve matching.
  • Supports manual mappings when automatic Sonarr, Radarr, or Seerr matching is wrong, missing, or ambiguous.
  • Stores settings locally in browser extension storage.
  • Does not include analytics, advertising, tracking SDKs, or a developer-operated backend.

Supported providers

Provider Purpose
Sonarr Add and edit TV/anime series through your configured Sonarr server.
Radarr Add and edit movies through your configured Radarr server.
Seerr Request media through your configured Seerr instance and let Seerr apply its own Sonarr/Radarr defaults.

Sonarr and Radarr can be used without Seerr.

Seerr can be used alongside Sonarr/Radarr, or as the main visible action on browse cards.

For Seerr TV requests, ani2arr sends explicit seasons when season data is known. For movies, ani2arr sends the TMDB movie target. Seerr then handles the request according to its own server-side configuration.

Install

Browser Recommended install Notes
Firefox Firefox Add-ons Requires Firefox 142 or newer.
Chrome / Chromium Chrome Web Store Requires Chrome/Chromium 120 or newer.

Manual install

Firefox XPI

  1. Download the signed XPI from Firefox Add-ons or GitHub Releases.
  2. Open about:addons.
  3. Gear menu -> Install Add-on From File....
  4. Select the XPI.

Chrome / Chromium

  1. Download and extract the Chrome MV3 zip from GitHub Releases.
  2. Open chrome://extensions.
  3. Enable Developer mode.
  4. Click Load unpacked.
  5. Select the extracted extension folder.

Local Chrome builds are created under .output/chrome-mv3. Release assets on GitHub include SHA256 checksums for manual verification.

Setup

  1. Install ani2arr.

  2. Open the extension options.

  3. Configure one or more providers:

    • Sonarr
    • Radarr
    • Seerr
  4. Add the provider URL and API key.

  5. Set the default profiles, root folders, monitored state, and add behavior.

  6. Open AniList or AniChart.

  7. Use the ani2arr actions shown on supported pages.

Screenshots

AniList anime page AniList browse AniChart browse
ani2arr Sonarr, Radarr, and Seerr actions on an AniList anime page ani2arr actions on AniList browse results ani2arr actions on AniChart seasonal anime listings
Sonarr/Radarr add modal Sonarr/Radarr edit modal Mapping modal
ani2arr Sonarr and Radarr add modal ani2arr Sonarr and Radarr edit modal ani2arr manual mapping modal for missing or incorrect matches
Seerr request modal Seerr target picker
ani2arr Seerr request modal ani2arr Seerr target picker for missing or ambiguous TMDB matches
Provider options Mapping options UI options
ani2arr provider options for Sonarr, Radarr, and Seerr ani2arr mapping options ani2arr UI options

ID Matching

ani2arr uses multiple sources to match AniList entries to the correct Sonarr, Radarr, or Seerr target:

  • AniList metadata
  • AniList media type
  • public AniBridge mapping files
  • provider search results
  • manual mappings saved by the user
  • manual Seerr target selections saved by the user

Manual mappings are useful when automatic matching is wrong, missing, or ambiguous.

FAQ

Can ani2arr delete items from Sonarr or Radarr?

No. ani2arr does not implement delete actions. It can only add new items or edit existing items.

Does ani2arr work with Seerr?

Yes. ani2arr can request media through a configured Seerr instance and show request status when available.

Does ani2arr require Seerr?

No. Sonarr and Radarr can be used directly without Seerr.

Does ani2arr send data to a developer server?

No. ani2arr does not operate a backend. Settings are stored locally, and requests are made to AniList, AniBridge mapping files, and the providers configured by the user.

Why does Firefox show broad permissions?

Self-hosted services can run on localhost, private IPs, custom domains, subdomains, or reverse proxies. Browser host permissions are origin-based, so the permission text can look broader than the actual configured use.

Can ani2arr see how many episodes are available in Plex?

No. ani2arr can show Seerr request status when available, but it does not inspect Plex libraries or count available Plex episodes.

Support and issues

Use GitHub Issues to report bugs, mapping problems, and feature requests.

For security issues, do not open a public issue. See SECURITY.md.

Privacy and permissions

ani2arr stores configuration locally in browser extension storage, including provider URLs, API keys, default add settings, UI preferences, manual mappings, manual Seerr targets, and cached metadata.

ani2arr may request data from:

  • configured Sonarr servers
  • configured Radarr servers
  • configured Seerr servers
  • AniList GraphQL
  • public AniBridge mapping files hosted on GitHub

ani2arr does not:

  • send data to a developer-owned backend
  • include analytics
  • include advertising
  • include tracking SDKs
  • sell user data
  • sync settings to a developer service

Browser permissions cover AniList, AniChart, AniList GraphQL, public AniBridge mapping files, GitHub release asset URLs used by AniBridge downloads, and the provider URLs configured by the user.

Host permissions are origin-based. Firefox cannot isolate permissions by port, so self-hosted services on localhost, private IPs, subdomains, or reverse proxies may require broader-looking permissions than the actual configured use.

See PRIVACY.md for the full privacy policy.

Development

This project uses pnpm, WXT, React, TypeScript, Tailwind CSS, and Vitest.

Requirements

  • Node.js 24 or newer
  • pnpm 11.5.1 or compatible

Commands

pnpm install

pnpm run dev
pnpm run dev:chrome

pnpm run audit
pnpm run lint
pnpm run compile
pnpm run test
pnpm run validate

pnpm run build
pnpm run build:chrome
pnpm run build:all

pnpm run zip
pnpm run zip:chrome
pnpm run zip:all

Firefox is the default browser target. Chrome commands use the :chrome suffix. Build and zip artifacts are created under .output/.

Notes

  • See CHANGELOG.md for version history.
  • See SECURITY.md for vulnerability reporting.
  • Thanks to AniBridge and their contributors for maintaining the upstream mapping database.
  • ani2arr is a personal open source project.
  • Issues and PRs are welcome, but support and fixes are not guaranteed. See Support and issues.

License

ani2arr is licensed under the GNU General Public License v3.0.

Releases

Packages

Used by

Contributors

Languages