Mason watches every configured mailbox around the clock, checking for new mail every 30 seconds. An alert is raised the moment a monitored keyword appears in a message's subject line, an attachment's filename, or inside the attachment itself (PDF, Word, Excel and HTML files are opened and their text is scanned). Matching is case-insensitive and tolerant of encoded or oddly-split subjects — if the keyword is there, it is caught.
Limits to know: mail that arrived before a keyword or account was added is not scanned (monitoring is forward-only), and scanned/photo PDFs contain no readable text, so their contents can't be matched — their filename still can.
Two live feeds: mail received by your accounts and mail sent from them, each card showing who, what, when, which keyword hit, and where it hit (subject / attachment / content). Cards arrive in real time — no refresh needed.
Above each list: a search box, read/unread filter, account filter, and “✓ All read” which marks everything currently matching your filters as read in one click. Click any card to open the full email.
On the Home and Domain tabs (when not typing in a box):
j / k — move the highlight down / up the list
Enter — open the highlighted email
r — mark it read / unread
i — open it and jump straight to the ignore-domain picker
s — switch the highlight between Inbox and Sent (Home tab)
In the email viewer: ← / → move to the previous / next alert, ↑ / ↓ scroll the open message, Esc closes.
Opens the full message safely (links open in a new tab; nothing runs). Footer buttons: 📝 Note saves a note about this email — pre-filled and permanently linked back to it. 🚫 Ignore domain silences a sender's whole domain. 🗑 Remove deletes the alert. ← / → walk through your alerts without closing, and ↑ / ↓ scroll the open message.
Separate from keywords: add whole domains (e.g. rival-bank.com) and get an alert whenever any mail arrives from them, keyword or not. Same cards, filters, viewer and “All read” as the Home tab.
Domains you've ignored stop raising alerts, but their mail isn't lost — it's collected in the Ignored tab so you can audit what's being filtered and un-ignore a domain at any time.
Notes live in the Notes tab; the floating ✏️ button (bottom-right) opens a quick-note popup from anywhere. Both support:
📷 Images — attach up to 4 (or just paste a screenshot straight into the text box). Click a thumbnail to view full-size.
⏰ Timer — set a date & time and the note becomes a reminder: banner, ring, browser notification and phone push when due.
📧 Linked email — notes created from the viewer's 📝 button carry a chip that reopens the original email.
Pin 📌, edit ✏️, copy ⧉ or delete 🗑 from each note card.
Standalone reminders with quick chips (+1h, +3h, tomorrow…). When one is due you get the on-screen banner and ring, a browser notification, and — if you set an ntfy topic in the panel — a push straight to your phone, 24/7, even with the browser closed (the server does the pushing). Snooze or acknowledge from the banner.
Add mail accounts (address + app password), toggle inbox/sent checking per account, and maintain the keyword list. New keywords take effect on the next 30-second poll — no restart. Keywords match as substrings: invoice also hits REINVOICED.
The 🎨 button opens themes (dozens, incl. 4 signature typographic ones), accent colors, summary-card styles and motion toggles — including the card entrance animation if you prefer things perfectly still. 🌙 flips light/dark.
Current version: V15.0 (July 20th 2026)
This project was brought to life after the concept was initiated by MasonX0X, January 2026.
Rocinente — created the first stable version of this dashboard, February 2026 (kicked off as Domain monitor only). Not active.
MasonX0X — daily improvements & tweaks after proof of concept, to date (see this help section for all functions).
Alpha_Linux — appearance mods, multi-language keyword matching, project tester from version 1 to date. Active.
Almighty-Coded — attachment scanning feature & active tester.
Report any bug, improvement suggestion or request directly to support @Masonnx.
🔒 locks the portal instantly; the password unlocks it. While locked, monitoring continues at full speed — the lock screen even shows a live feed of what's being caught. Alerts, read-state, notes, reminders and settings all survive restarts (stored in data/ on the server).
Matches the From or To address, subdomains included. Cards keep all their data — remove a domain and its alerts return to the main sections.
These topics ring your phone when a reminder is due, even with no browser open.
Removing a device forces the portal password on its next visit. Your current device is marked.
New or unrecognized devices must enter the portal password before they can read or manage alerts. Live alerts remain visible (read-only) on the lock screen.
Update the password used to unlock this portal. You'll stay signed in on this device; the new password applies to future unlocks.
This password is required to export account files that include saved email passwords. Changing it here needs the current export password and does not affect portal login.
Personalize the name shown in the header, the browser tab, and the lock screen. Leave blank to reset to the default.
Set your dashboard's public address so tapping an ntfy notification on your phone opens that alert directly. Leave blank if you only monitor from the same machine.