The app has two distinct components, the Go backend and the VueJS frontend. In the dev environment, both are run independently.
nodejs(if you are working on the frontend) and
- Postgres database. If there is no local installation, the demo docker DB can be used for development (
docker compose up demo-db)
First time setup¶
git clone https://github.com/knadh/listmonk.git. The project uses go.mod, so it's best to clone it outside the Go src path.
config.tomland add your config.
make distto build the listmonk binary. Once the binary is built, run
./listmonk --installto run the DB setup. For subsequent dev runs, use
mailhog is an excellent standalone mock SMTP server (with a UI) for testing and dev.
Running the dev environment¶
make runto start the listmonk dev server on
make run-frontendto start the Vue frontend in dev mode using yarn on
/api/*calls are proxied to the app running on
:9000. Refer to the frontend README for an overview on how the frontend is structured.