/Email-Dashboard

📪 An interactive emailing management service with scheduling, templating, tracking and A/B testing.

Primary LanguageRubyMIT LicenseMIT

Email Dashboard

🇨🇳简体中文

This service helps you to manage notifications that you are sending to your users. It's an amazing tool to manage your outgoing emails from your apps.

Demo & Docs

Demo: https://dashboard.pigon.ws

Docs: https://email-dashboard.readthedocs.io/en/latest

Code Overview

  • The REST API builded with superfast language golang.
  • The Dashboard builded with fastest development framework Rails
  • Front-end framework uikit using in the dashboard.

Features

  • Monitor email activities that your service sent.
  • Interactive templates.
  • Multiple SMTP support.
  • Scheduled delivery with time zone.
  • Perform / Cancel scheduled activities optionally.
  • Tracking.
  • A/B testing.

Usage

In Dashboard

  • Add your SMTP Settings
  • Create email template with handlebars variables.
  • Create notification

Posting to REST API

/POST https://api.{{yourhost}}/api/v3/notifications/{{notification-slug}}

Authorization: Token {{AccountToken}}

{
   "variables":{
      "button_name": "Click me!",
      "name": "John"
   },
   "email": {
      "to": ["test@example.com", "second-to@example.com"],
      "cc": ["cc-test@example.com"],
      "reply_to": ["reply-to@example.com"],
      "from": "myapp@example.com"
   },
   "delivery": { # optional
     "time": "21:00",
     "date": "2018-09-22",
     "zone": "Europe/Istanbul"
   }
}

Installation

Install Docker

Linux

Install the most recent version of the Docker Engine for your platform using the official Docker releases, which can also be installed using:

wget -qO- https://get.docker.com/ | sh

Execute this line to allow docker to execute without being root

sudo usermod -aG docker ${USER}

Logout, then login again. Permissions should be applied.

MacOS

Follow installation instructions here: https://store.docker.com/editions/community/docker-ce-desktop-mac

Install Docker Compose

Install docker compose from the official page, or manually run:

curl -L "https://github.com/docker/compose/releases/download/1.11.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

Create data folders

Ubuntu
 mkdir -p /datadrive/mysql && mkdir -p /datadrive/data/redis
macOS
 mkdir -p ~/datadrive/mysql && mkdir -p ~/datadrive/data/redis

Clone repo

 git clone https://github.com/Email-Dashboard/Email-Dashboard.git

Deployment

  docker-compose build
  docker-compose run web rake db:migrate
  docker-compose up -d

Contributing

See contributing guide.

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

Authors

Sahin Boydas

Co-Founder @ LeoApp
LinkedIn
Muhammet

Developer @ LeoApp
Github
Sadik

Developer @ LeoApp
Github

License

Use of this software is subject to important terms and conditions as set forth in the LICENSE file