whatisgithub

What is squatch-mail?

axio-intelligence/squatch-mail — explained in plain English

Analysis updated 2026-05-18

0ElixirAudience · developerComplexity · 3/5Setup · moderate

In one sentence

A self-hosted Elixir dashboard, added as a library, that tracks Amazon SES email delivery, bounces, and complaints in your own database.

Mindmap

mindmap
  root((repo))
    What it does
      SES email dashboard
      Bounce and complaint tracking
      Suppression list
    Tech stack
      Elixir
      Phoenix
      PostgreSQL
    Features
      Swoosh telemetry hook
      SNS webhook ingestion
      Complaint rate circuit breaker
    Setup
      Add as Hex package
      One migration
      Mount one route
    Audience
      Elixir developers
      Phoenix app owners

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Add live delivery, open, and click tracking to a Phoenix app that already sends email through SES.

USE CASE 2

Automatically pause outbound email if the complaint rate approaches SES's suspension threshold.

USE CASE 3

Get one-click SES setup plus DNS verification helpers for SPF, DKIM, and DMARC records.

What is it built with?

ElixirPhoenixPostgreSQLSwoosh

How does it compare?

axio-intelligence/squatch-mailcamilotk/bookingdarinwilson/torch
Stars0
LanguageElixirElixirElixir
Last pushed2023-08-232016-11-02
MaintenanceDormantDormant
Setup difficultymoderateeasyeasy
Complexity3/51/52/5
Audiencedeveloperdeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires an existing Phoenix app already sending through Amazon SES via Swoosh.

So what is it?

SquatchMail is a self hosted dashboard for tracking email sent through Amazon SES, built specifically for Elixir applications using the Phoenix framework. It ships as a regular Hex package rather than a separate service you have to run and maintain, similar in spirit to tools like ErrorTracker or Oban Web. You add it as a dependency, run one database migration, and mount one route, and it starts tracking every email your app sends through SES: a live activity feed, delivery, open, and click tracking, bounce and complaint handling, and a suppression list of addresses that should not be emailed again. The project leans into a lighthearted bigfoot theme throughout its naming: each email sent is called a Sighting, each event it generates is a Footprint, the suppression list is called the Do Not Disturb Registry, and the SES connection screen is called Base Camp. Underneath that theme the actual code and database tables are described as intentionally plain and boring. Technically, SquatchMail attaches to Swoosh's built in telemetry events to observe every email your app already sends, with no changes needed to your existing send path. It receives SES delivery, bounce, complaint, and click notifications through an SNS backed webhook with its own hand verified signature checking, and it can automatically pause sending if your complaint rate crosses a configurable threshold, similar to the limit that would otherwise get your SES account suspended. It also includes one click setup for SES configuration, DNS verification helpers for SPF, DKIM, and DMARC records, and a background job that periodically deletes old email records past a retention period you configure. All of the data lives in its own Postgres schema inside your existing application database, so there is no separate queue, cache, or service to run. The README notes that credential encryption for static AWS keys is not yet finished. Setup is done with a single Igniter install command, and the project is written entirely in Elixir.

Copy-paste prompts

Prompt 1
Walk me through installing SquatchMail into an existing Phoenix app with Igniter.
Prompt 2
Explain how SquatchMail observes outbound email through Swoosh telemetry without changing my send path.
Prompt 3
Show me how the suppression list and complaint-rate circuit breaker work together in SquatchMail.
Prompt 4
Help me understand how SquatchMail verifies SNS webhook signatures for SES bounce and complaint events.

Frequently asked questions

What is squatch-mail?

A self-hosted Elixir dashboard, added as a library, that tracks Amazon SES email delivery, bounces, and complaints in your own database.

What language is squatch-mail written in?

Mainly Elixir. The stack also includes Elixir, Phoenix, PostgreSQL.

How hard is squatch-mail to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is squatch-mail for?

Mainly developer.

Open on GitHub → Ask about another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.