1aecd6f2e1
Lists, campaigns, and subscribers tables now support server-side sorting from the UI. This significantly changes the internal queries from prepared to string interpolated to support dynamic sort params. |
||
---|---|---|
cmd | ||
frontend | ||
internal | ||
models | ||
static | ||
.dockerignore | ||
.gitattributes | ||
.gitignore | ||
.goreleaser.yml | ||
Dockerfile | ||
LICENSE | ||
Makefile | ||
README.md | ||
TODO.md | ||
config-demo.toml | ||
config.toml.sample | ||
docker-compose.yml | ||
go.mod | ||
go.sum | ||
queries.sql | ||
schema.sql | ||
stats.sql |
README.md
listmonk is a standalone, self-hosted, newsletter and mailing list manager. It is fast, feature-rich, and packed into a single binary. It uses a PostgreSQL database as its data store.
Visit listmonk.app
listmonk is alpha software and may change and break. Use with caution. That said, it has been in active use at zerodha.com where it has processed hundreds of campaigns and tens of millions of e-mails.
Installation
Docker
The latest image is available on DockerHub at listmonk/listmonk:latest
. Use the sample docker-compose.yml to run listmonk and Postgres DB with docker-compose as follows:
Demo
docker-compose up -d demo-db demo-app
The demo does not persist Postgres after the containers are removed. DO NOT use this demo setup in production.
Production
docker-compose up db
to run the Postgres DB.docker-compose run --rm app ./listmonk --install
to setup the DB (or--upgrade
to upgrade an existing DB)- Run
docker-compose up app
and visithttp://localhost:9000
.
More information on docs.
Binary
- Download the latest release and extract the listmonk binary.
./listmonk --new-config
to generate config.toml. Then, edit the file../listmonk --install
to setup the Postgres DB (or--upgrade
to upgrade an existing DB. Upgrades are idempotent and running them multiple times have no side effects).- Run
./listmonk
and visithttp://localhost:9000
.
Heroku
Using the Nginx buildpack can be used to deploy listmonk on Heroku and use Nginx as a proxy to setup basicauth. This one-click Heroku deploy button provides an automated default deployment.
Please note that configuration options must be set using environment configuration variables.
Developers
listmonk is a free and open source software licensed under AGPLv3. If you are interested in contributing, refer to the developer setup. The backend is written in Go and the frontend is Vue with Buefy for UI.
License
listmonk is licensed under the AGPL v3 license.