How ulquiorraciffer/ceromailer works
CeroMailer sends files from an institute computer to a recipient by email, through either a webpage or a CLI. Both clients obtain an upload session, upload files directly to Supabase Storage, and submit message details to the serverless send endpoint. That endpoint fetches the session’s files, checks limits and logs the send in Supabase, delivers the email through Gmail SMTP, then removes temporary uploads. The README documents the webpage workflow and safeguards; its source was not sampled, so frontend wiring is shown only at that documented level.
Main entry points: send.py Send API · index.html Webpage · cli.py CLI · create-session.py Session API
Components 8
Serverless API
- Session API
api/create-session.py - Send API
api/send.py
Supabase services
- Supabase Storage
- Send limits and log
supabase-schema.sql
Email delivery
- Gmail SMTP
Other components
- Sender
Connections 14
- Sender → Webpage: uses
- Sender → CLI: uses
- Webpage → Session API: requests session
- CLI → Session API: requests session
- Session API → Webpage: returns session ID
- Session API → CLI: returns session ID
- Webpage → Supabase Storage: uploads files
- CLI → Supabase Storage: uploads files
- Webpage → Send API: submits message
- CLI → Send API: submits message
- Send API → Supabase Storage: lists and downloads
- Send API → Send limits and log: checks limits and logs
- Send API → Gmail SMTP: sends email
- Send API → Supabase Storage: deletes temporary files