sendrepute / sendrepute-campaigns
git clone https://github.com/sendrepute/sendrepute-campaigns.git
v0.1.44 · 16d ago
Self-hosted SendRepute Campaigns compiled runtime distribution
—
stars, 24h
—
stars, 7 days
+616
stars, 30 days · #475
616
★ total
54
forks · 0 open issues
Star history starts 2026-10-20; the chart appears after the second daily snapshot.
LanguageShell
License—
Created2026-09-25 (25d ago)
Last push6d ago
Watchers31
OwnerUser
Links
- GitHub: github.com/sendrepute/sendrepute-campaigns
- Homepage: https://www.sendrepute.com/campaigns/?demo=true
- Releases · Issues · Hacker News mentions
README excerpt
English · العربية · Français · Русский · Українська · हिन्दी · Deutsch · Español · Italiano · Português · Bahasa Indonesia · Türkçe · 简体中文 · Tiếng Việt # SendRepute Campaigns Self-hosted audiences, campaigns, templates, automations and delivery from your own server. This repository distributes the **compiled runtime**, not the full source monorepo. Try the interactive demo (no real messages, hosted builders or paid results). ## Quickstart: fresh Ubuntu 24.04/26.04 On a **new server without an existing Campaigns installation**, run: [code] Setup asks which access mode to use and reuses working Docker/Compose; on a fresh supported Ubuntu server without Docker, it requests consent to install Ubuntu's packages. It does not remove Snap Docker or bypass AppArmor. Do not clone over an existing installation; see Update. **CAMPAIGNS READY FOR OWNER SETUP** means the app is healthy inside its container, not that owner setup is complete or public HTTPS has been verified. For HTTPS, first verify the printed installation page from another network: it must have a valid, trusted certificate with no browser warnings. If the certificate is pending or invalid, do **not** enter any secrets. For a new owner, the one-time token is **required**, not optional. Once your chosen access is ready, run this on the VPS **from the project directory**: [code] Omit `sudo` if your Docker account does not require it. Copy the command output and paste it into the **Setup token** field on the printed installation page. Fill in the owner details and corresponding Public URL ending in `/campaigns/`, then complete SendRepute activation and owner setup in the wizard. Setup does **not** print the token automatically. Never put it in a URL or share it; keep the token, `.env` and logs private. An already installed workspace does not need another setup token. ## Choose access - **HTTPS domain (recommended):** setup starts the included Caddy proxy. Enter a subdomain you control, for example `campaigns.example.com` (replace with your own), with **no scheme, port or path**. Point that hostname's DNS `A` record to this server, allow TCP 80/443 and check the trusted certificate externally. Use `AAAA` only with working IPv6. - **Local / SSH tunnel:** binds the app to VPS loopback. Open it through a trusted SSH tunnel from your computer; your laptop's `localhost` is not the VPS. - **Public IP + HTTP:** explicitly consent to unencrypted access on port 8080. Passwords, tokens and sessions can be intercepted; **not for secure production deployment**. See the setup command cookbook for exact commands, options, local SSH tunneling, diagnostics and warnings. ## Moving from HTTP to HTTPS Back up first. Point **your actual hostname** to the VPS, free/open TCP 80/443 and confirm its DNS works. On the VPS, in the **existing** project directory: [code] Replace `campaigns.sendrepute.com` with your hostname (`campaign` and `campaigns` are different DNS names). Confirm the exposure change when as