MCPcopy
hub / github.com/knadh/listmonk

github.com/knadh/listmonk @v6.2.0 sqlite

repository ↗ · DeepWiki ↗ · release v6.2.0 ↗
1,292 symbols 3,932 edges 211 files 618 documented · 48%
README

listmonk-logo

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.

listmonk-dashboard

Visit listmonk.app for more info. Check out the live demo.

Installation

Docker

The latest image is available on DockerHub at listmonk/listmonk:latest. Download and use the sample docker-compose.yml.

# Download the compose file to the current directory.
curl -LO https://github.com/knadh/listmonk/raw/master/docker-compose.yml

# Run the services in the background.
docker compose up -d

Visit http://localhost:9000

See installation docs


Binary

  • Download the latest release and extract the listmonk binary.
  • ./listmonk --new-config to generate config.toml. Edit it.
  • ./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 visit http://localhost:9000

See installation docs


Developers

listmonk is 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.

Extension points exported contracts — how you extend this code

Messenger (Interface)
Messenger is an interface for a generic messaging backend, for instance, e-mail, SMS etc. [2 implementers]
internal/manager/manager.go
Mailbox (Interface)
Mailbox represents a POP/IMAP mailbox client that can scan messages and pass them to a given channel. [1 implementers]
internal/bounce/bounce.go
Store (Interface)
Store represents functions to store and retrieve media (files).
internal/media/media.go
AppProps (Interface)
(no doc)
frontend/email-builder/src/App/index.tsx
FuncPush (FuncType)
(no doc)
internal/notifs/notifs.go
Store (Interface)
Store represents a data backend, such as a database, that provides subscriber and campaign records.
internal/manager/manager.go
FuncNotif (FuncType)
(no doc)
internal/notifs/notifs.go
FuncNotifSystem (FuncType)
(no doc)
internal/notifs/notifs.go

Core symbols most depended-on inside this repo

Ts
called by 268
internal/i18n/i18n.go
T
called by 230
internal/i18n/i18n.go
JSON
called by 100
internal/i18n/i18n.go
pqErrMsg
called by 97
internal/core/core.go
Render
called by 72
cmd/public.go
makeMsgTpl
called by 62
cmd/utils.go
hasID
called by 42
cmd/handlers.go
getID
called by 36
cmd/handlers.go

Shape

Function 693
Method 447
Struct 135
TypeAlias 7
Interface 5
FuncType 3
Class 2

Languages

Go59%
TypeScript41%
Python1%

Modules by API surface

docs/i18n/vue.min.js247 symbols
frontend/src/api/index.js87 symbols
internal/manager/manager.go51 symbols
cmd/init.go29 symbols
internal/subimporter/importer.go27 symbols
cmd/subscribers.go26 symbols
cmd/public.go26 symbols
internal/core/subscribers.go24 symbols
internal/auth/auth.go24 symbols
cmd/auth.go24 symbols
internal/core/campaigns.go23 symbols
frontend/email-builder/src/outlook.ts23 symbols

Dependencies from manifests, versioned

dario.cat/mergov1.0.2 · 1×
github.com/Masterminds/goutilsv1.1.1 · 1×
github.com/Masterminds/semver/v3v3.4.0 · 1×
github.com/Masterminds/sprig/v3v3.3.0 · 1×
github.com/altcha-org/altcha-lib-gov1.0.0 · 1×
github.com/boombuler/barcodev1.0.1-0.20190219062 · 1×
github.com/coreos/go-oidc/v3v3.14.1 · 1×
github.com/disintegration/imagingv1.6.2 · 1×
github.com/emersion/go-messagev0.18.2 · 1×
github.com/fsnotify/fsnotifyv1.9.0 · 1×
github.com/gdgvda/cronv0.4.0 · 1×
github.com/go-jose/go-jose/v4v4.1.4 · 1×

For agents

$ claude mcp add listmonk \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact