Running in production · Independent · 26 Oct 2026

nulcraft/boxwatchr

Stop babysitting your inbox. Self-hosted IMAP email processor with custom rules and spam learning/filtering, all configured through a simple web UI.

← Running in production
boxwatchr: self-hosted email processor. Watches your inbox and runs custom filtering rules.
Verified26 Oct 2026

Radar check

What we found when we opened it. Every bar is one fact, with its date.

Alive30

Last code pushed 10 Apr 2026, 6 months before this check.

Releases50

Latest release v1.1.2 on 10 Apr 2026.

Maturity25

Public since March 2026, 7 months.

Adoption23

13 stars and 3 forks.

Activity0

0 commits and 1 new issues in the last 90 days.

Community10

1 contributor. No pull requests merged in 90 days; changes go in directly. A small team carries it.

Security40

No security policy file says how to report a problem. No published security advisories.

Licence GPL-3.0: free to use; software you hand out that includes it must be GPL tooSetup effort 3 of 5Payoff 4 of 5
How the bars are scored
  • Alive. Days since the last code push: a week or less 100, a month 90, three months 70, six months 50, a year 30, eighteen months 15, older 0.
  • Releases. Age of the latest GitHub release, on a similar scale; no bar when the project publishes no releases.
  • Maturity. Age of the project: eight years 100, five 90, three 70, two 55, one 40, six months 25, younger 10.
  • Adoption. Stars on a log scale: 100,000 stars is 100, 10,000 is 80, 1,000 is 60, 100 is 40.
  • Activity. Commits in the last 90 days: 300 or more 100, 100 85, 30 65, 10 45, any 25.
  • Community. People who have contributed: 100 or more 100, 30 80, 10 60, 5 40, 2 25, one 10.
  • Security. A published security policy 80, none 40; published advisories are listed, not scored.

Checked by Repo Radar on 26 Oct 2026 from the repository on GitHub.

In simple English

Inbox rules in standard email apps often feel limited and hard to trust. This self-hosted tool connects to your email account and applies custom rules with a powerful spam engine behind them. It watches for incoming messages in real time, scores them, and sorts them automatically. You can test your rules safely before turning them on for real. It runs on your own server so your login details and messages stay private.

What it is

A self-hosted Python daemon that connects to any IMAP mailbox, runs incoming messages through rspamd for spam scoring, and applies custom sorting rules. It stores logs and configuration in a local SQLite database and provides a web dashboard for management.

What it is good for

Solo builders who want to stop sorting noisy mailboxes by hand, filter newsletters automatically, or run private spam filtering without relying on cloud email services.

Stars13
LicenceGPL-3.0
Latestv1.1.2 (2026-04-10)checked 26 Oct 2026
Last code change2026-04-10
Written inPython
Setup effort
3 / 5
Payoff
4 / 5
Good
  • Real-time monitoring using IMAP IDLE with polling fallback.
  • Dry run mode lets you test rules safely without altering real emails.
  • Includes a built-in spam scoring engine and Bayesian training tools.
Watch for
  • Requires Docker and Docker Compose on a server you control.
  • Losing server data means losing your email logs and Bayesian training history.
  • Requires a mail provider that supports the IMAP protocol.
Replaces

manual email sorting rules in webmail clients

Works well with

Caddy

Similar repositories
  • n8n-io/n8n209k stars

    A workflow automation platform that can handle custom email triggers, but requires more setup.

Also reviewed on Repo Radar
  • traefik/traefik65k stars

    Decides which program answers each incoming request, and builds the rules by watching where the programs are.

  • rajnandan1/kener5.2k stars

    A status page you run yourself, which checks your services and shows their recent history.

  • caprover/caprover15k stars

    A web page that installs apps and databases onto one rented computer, and sorts out the addresses and certificates.

Install
mkdir -p boxwatchr/config boxwatchr/data
docker run -d --name boxwatchr --restart on-failure -p 8143:8143 -v ./config:/app/config -v ./data:/app/data ghcr.io/nulcraft/boxwatchr:latest

Independent: reviewed for Repo Radar outside the daily editions. Every independent repository

On Stack Radar: Productivity & Collaboration › Email & Team Communication › Inbox Cleanup & Email Filtering.

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.