https://github.com/Mailtrain-org/mailtrain/tree/development
Mailtrain v2 beta is available. Check it out hereMailtrain
Mailtrain is a self hosted newsletter application built on Node.js (v7+) and MySQL (v5.5+ or MariaDB).
Features
- Subscriber list management
- List segmentation
- Custom fields
- Email templates
- Large CSV list import files
Subscribe to Mailtrain Newsletter here (uses Mailtrain obviously)
Hardware Requirements
- 1 vCPU
- 1024 MB RAM
Quick Start - Deploy with Docker
Requirements:
Steps:
Depending on how you have configured your system and Docker you may need to prepend the commands below with sudo
.
- Download Mailtrain files using git:
git clone git://github.com/Mailtrain-org/mailtrain.git
(or download zipped repo) and open Mailtrain foldercd mailtrain
- Copy the file
docker-compose.override.yml.tmpl
todocker-compose.override.yml
and modify it if you need to. - Bring up the stack with:
docker-compose up -d
- Start:
docker-compose start
- Open http://localhost:3000/ (change the host name
localhost
to the name of the host where you are deploying the system). - Authenticate as user
admin
with passwordtest
- Navigate to http://localhost:3000/settings and update service configuration, especially replace the value in
Service Address (URL)
fromlocalhost
to the actual IP or domain if installed on a server, otherwise e.g. image upload will not work. - Navigate to http://localhost:3000/users/account and update user information and password.
Quick Start - Manual Install (any OS that supports Node.js)
Requirements:
- Mailtrain requires at least Node.js v7. If you want to use an older version of Node.js then you should use version v1.24 of Mailtrain. You can either download it here or if using git then run
git checkout v1.24.0
before starting it
- Download Mailtrain files using git:
git clone git://github.com/Mailtrain-org/mailtrain.git
(or download zipped repo) and open Mailtrain foldercd mailtrain
- Run
npm install --production
in the Mailtrain folder to install required dependencies - Copy config/default.toml as
config/production.toml
and update MySQL and any other settings in it - Run the server
NODE_ENV=production npm start
- Open http://localhost:3000/
- Authenticate as
admin
:test
- Navigate to http://localhost:3000/settings and update service configuration, especially replace the value in
Service Address (URL)
fromlocalhost
to the actual IP or domain if installed on a server, otherwise e.g. image upload will not work. - Navigate to http://localhost:3000/users/account and update user information and password
Read The Docs
For more information, please read the docs.
License
- Versions 1.22.0 and up GPL-V3.0
- Versions 1.21.0 and up: EUPL-1.1
- Versions 1.19.0 and up: MIT
- Up to versions 1.18.0 GPL-V3.0