Skip to content

Pulsarr: Real-time Plex watchlist monitoring and content acquisition tool. Seamlessly sync Plex watchlists with Sonarr and Radarr, featuring intelligent predicated content routing, multi-instance support, Discord, and Apprise notifications. Automate your media library management with a modern, user-friendly interface.

License

Notifications You must be signed in to change notification settings

jamcalli/Pulsarr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Pulsarr Logo

Pulsarr

Real-time Plex watchlist monitoring, routing, and notification center

Version License Node Status Docker Pulls Docker Image Size GitHub Stars


⭐ Love Pulsarr? Give Us a Star! ⭐

If Pulsarr has simplified your media management, please star this repository! It takes just a second, helps others find us, and motivates continued development. Thank you for being part of our community!

Stargazers repo roster for @jamcalli/pulsarr


Pulsarr is an integration tool that bridges Plex watchlists with Sonarr and Radarr, enabling real-time media monitoring and automated content acquisition all from within the Plex App itself.

Enjoy all the benefits of other content discovery systems without requiring users to use additional services. All the magic happens from the primary user's Plex Token.

It provides user-based watchlist synchronization for yourself and for friends, intelligent content routing based on multiple criteria, approval workflows with quota management, and notification capabilities (Discord and Apprise).

Dashboard

📚 Documentation

Full documentation is available at: https://jamcalli.github.io/Pulsarr/

🚀 Quick Start

Docker Installation (Recommended)

  1. Create a .env file:
baseUrl=http://your-server-ip   # Address where Pulsarr can be reached
port=3003                       # Port where Pulsarr is accessible
TZ=America/Los_Angeles          # Set to your local timezone
logLevel=info                   # Default is 'silent', but 'info' is recommended
NODE_ARGS=--log-both            # Default logs to file only, '--log-both' shows logs in terminal too
  1. Create docker-compose.yml:
services:
  pulsarr:
    image: lakker/pulsarr:latest
    container_name: pulsarr
    ports:
      - "3003:3003"
    volumes:
      - ./data:/app/data
      - .env:/app/.env
    restart: unless-stopped
    env_file:
      - .env
  1. Pull and start the service:
docker compose pull && docker compose up -d
  1. Access the web UI at http://your-server:3003 to complete setup.

For detailed installation options, including Unraid, manual installation, and PostgreSQL setup, see the documentation.

Database Options

Pulsarr uses SQLite by default but can also be configured to use PostgreSQL for users requiring external database access or high-scale deployments.

See the configuration documentation for PostgreSQL setup details.

✨ Key Features

  • Real-time Monitoring: Instant watchlist updates for Plex Pass users (20-minute polling for non-Pass users)
  • Smart Content Routing: Route content based on genre, user, language, year, certification, and more
  • Approval & Quota System: Administrative approval workflows with configurable user quotas (daily/weekly/monthly limits)
  • Multi-Instance Support: Distribute content across multiple Sonarr/Radarr instances with intelligent synchronization
  • Multi-User Support: Monitor watchlists for friends and family with granular permissions
  • Discord Bot Integration: Complete approval management directly from Discord with interactive commands
  • Flexible Notifications: Discord bot, Tautulli, webhooks, and 80+ services via Apprise
  • Advanced Lifecycle Management: Watchlist-based or tag-based deletion with playlist protection
  • Plex Session Monitoring: Auto-search for next seasons when users near season finales
  • User Tagging: Track who requested what content in Sonarr/Radarr
  • Comprehensive Analytics: Detailed dashboards with usage stats, genre analysis, and content distribution
  • Automatic Plex Updates: Configures webhooks for instant library refreshes
  • Developer-Friendly API: Full REST API with interactive documentation

🤝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details on:

  • Fork and branch naming conventions
  • Development workflow
  • Pull request guidelines

💬 Support

  • Need help? Open an issue on GitHub
  • 🐛 Report bugs or request features
  • 📖 Contribute to documentation
  • 💬 Share with the community

Your support helps keep this project active and growing!

❤️ Thank You

A big thank you to these amazing contributors who've helped build and maintain this project:

Contributors

📜 License

Pulsarr is licensed under the GPL. See the LICENSE file for details.

🙏 Acknowledgements


Built with ❤️ for the self-hosted community

About

Pulsarr: Real-time Plex watchlist monitoring and content acquisition tool. Seamlessly sync Plex watchlists with Sonarr and Radarr, featuring intelligent predicated content routing, multi-instance support, Discord, and Apprise notifications. Automate your media library management with a modern, user-friendly interface.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Languages