📈 GH Trending Explorer 🎲 Surprise me

← all repos

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

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