Merge branch 'master' of github.com:andris9/mailtrain

This commit is contained in:
Andris Reinman 2016-04-05 15:30:01 +03:00
commit 4584c85b4b
9 changed files with 66 additions and 42 deletions

View file

@ -27,9 +27,9 @@ Subscribe to Mailtrain Newsletter [here](http://mailtrain.org/subscription/EysIv
1. Download and unpack Mailtrain [sources](https://github.com/andris9/mailtrain/archive/master.zip) 1. Download and unpack Mailtrain [sources](https://github.com/andris9/mailtrain/archive/master.zip)
2. Run `npm install` in the Mailtrain folder to install required dependencies 2. Run `npm install` in the Mailtrain folder to install required dependencies
3. Edit [default.toml](config/default.toml) and update MySQL Settings 3. Copy [config/default.toml](config/default.toml) as `config/production.toml` and update MySQL Settings in it
4. Import SQL tables by running `mysql -u MYSQL_USER -p MYSQL_DB < setup/mailtrain.sql` 4. Import SQL tables by running `mysql -u MYSQL_USER -p MYSQL_DB < setup/mailtrain.sql`
5. Run the server `npm start` 5. Run the server `NODE_ENV=production npm start`
6. Open [http://localhost:3000/](http://localhost:3000/) 6. Open [http://localhost:3000/](http://localhost:3000/)
7. Authenticate as `admin`:`test` 7. Authenticate as `admin`:`test`
8. Navigate to [http://localhost:3000/settings](http://localhost:3000/settings) and update service configuration 8. Navigate to [http://localhost:3000/settings](http://localhost:3000/settings) and update service configuration
@ -48,7 +48,7 @@ Edit [mailtrain.conf](setup/mailtrain.conf) (update application folder) and copy
Mailtrain uses webhooks integration to detect bounces and spam complaints. Currently supported webhooks are: Mailtrain uses webhooks integration to detect bounces and spam complaints. Currently supported webhooks are:
* **AWS SES** create a SNS topic for complaints and bounces and use `http://domain/webhooks/aws` as the subscriber URL for these topics * **AWS SES** create a SNS topic for complaints and bounces and use `http://domain/webhooks/aws` as the subscriber URL for these topics
* **SparkPost** use `http://domain/webhooks/aws` as the webhook URL for bounces and complaints * **SparkPost** use `http://domain/webhooks/sparkpost` as the webhook URL for bounces and complaints
* **SendGrid** use `http://domain/webhooks/sendgrid` as the webhook URL for bounces and complaints * **SendGrid** use `http://domain/webhooks/sendgrid` as the webhook URL for bounces and complaints
* **Mailgun** use `http://domain/webhooks/mailgun` as the webhook URL for bounces and complaints * **Mailgun** use `http://domain/webhooks/mailgun` as the webhook URL for bounces and complaints

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 71 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 107 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

View file

@ -1,9 +1,8 @@
<div class="row"> <div class="row">
<div class="col-md-12"> <div class="col-md-12">
<div class="well">
<blockquote> <a class="btn btn-success btn-sm" href="http://mailtrain.org/subscription/EysIv8sAx" role="button">Subscribe here</a> to Mailtrain newsletter (uses Mailtrain obviously)
Subscribe to <strong>Mailtrain Newsletter</strong> <a href="http://mailtrain.org/subscription/EysIv8sAx">here</a> (uses Mailtrain obviously) </div>
</blockquote>
</div> </div>
</div> </div>
@ -22,6 +21,9 @@
</div> </div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<h2>Open source</h2> <h2>Open source</h2>
@ -29,10 +31,61 @@
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<h2>Send via any provider</h2> <h2>Send via any provider</h2>
<p>Amazon SES, SparkPost, SendGrid, Mailgun you name it. You can use any provider that supports SMTP protocol to send out your newsletters.</p> <p>Amazon SES, SparkPost, SendGrid, Mailgun you name it. You can use any provider that supports SMTP protocol to send out your newsletters. Bounce and complaints handling via webhooks is supported for SES, SparkPost, SendGrid and Mailgun.</p>
</div> </div>
<div class="col-md-4"> <div class="col-md-4">
<h2>On the roadmap</h2> <h2>On the roadmap</h2>
<p>Automatic bounce and complaint handling for other providers besides AWS SES, reports, API access and more…</p> <p>Reports, API access and more…</p>
</div> </div>
</div> </div>
<p></p>
<div class="row">
<div class="col-md-1"></div>
<div class="col-md-10">
<div id="carousel-example-generic" class="carousel slide" data-ride="carousel">
<!-- Indicators -->
<ol class="carousel-indicators">
<li data-target="#carousel-example-generic" data-slide-to="0" class="active"></li>
<li data-target="#carousel-example-generic" data-slide-to="1"></li>
<li data-target="#carousel-example-generic" data-slide-to="2"></li>
</ol>
<!-- Wrapper for slides -->
<div class="carousel-inner" role="listbox">
<div class="item active">
<img src="/images/img01_lists.png" alt="Lists">
</div>
<div class="item">
<img src="/images/img02_list.png" alt="List">
</div>
<div class="item">
<img src="/images/img03_fields.png" alt="Custom fields">
</div>
<div class="item">
<img src="/images/img04_segment.png" alt="List segments">
</div>
<div class="item">
<img src="/images/img05_subscribe.png" alt="List segments">
</div>
</div>
<!-- Controls -->
<a class="left carousel-control" href="#carousel-example-generic" role="button" data-slide="prev">
<span class="glyphicon glyphicon-chevron-left" aria-hidden="true"></span>
<span class="sr-only">Previous</span>
</a>
<a class="right carousel-control" href="#carousel-example-generic" role="button" data-slide="next">
<span class="glyphicon glyphicon-chevron-right" aria-hidden="true"></span>
<span class="sr-only">Next</span>
</a>
</div>
</div>
<div class="col-md-1"></div>
</div>
<p></p>

View file

@ -5,7 +5,7 @@
<meta charset="utf-8"> <meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags -->
<meta name="description" content="Self hosted email newsletter app"> <meta name="description" content="Self hosted email newsletter app">
<meta name="author" content="Andris Reinman"> <meta name="author" content="Andris Reinman">
<link rel="icon" href="/favicon.ico"> <link rel="icon" href="/favicon.ico">
@ -14,38 +14,8 @@
{{#if title}} | {{title}}{{/if}} {{#if title}} | {{title}}{{/if}}
</title> </title>
<!-- Bootstrap core CSS -->
<!--
<link rel="stylesheet" href="/bootstrap/css/bootstrap.min.css">
-->
<link rel="stylesheet" href="/datatables/datatables.min.css">
<!-- Bootswatch themes -->
<!--
<link rel="stylesheet" href="/bootstrap/themes/united.min.css">
-->
<!-- -->
<link rel="stylesheet" href="/bootstrap/themes/flatly.min.css"> <link rel="stylesheet" href="/bootstrap/themes/flatly.min.css">
<!-- --> <link rel="stylesheet" href="/datatables/datatables.min.css">
<!--
<link rel="stylesheet" href="/bootstrap/themes/slate.min.css">
-->
<!--
<link rel="stylesheet" href="/bootstrap/themes/paper.min.css">
-->
<!--
<link rel="stylesheet" href="/bootstrap/themes/superhero.min.css">
-->
<!--
<link rel="stylesheet" href="/bootstrap/themes/yeti.min.css">
-->
<!--
<link rel="stylesheet" href="/bootstrap/themes/simplex.min.css">
-->
<!--
<link rel="stylesheet" href="/bootstrap/themes/cosmo.min.css">
-->
<link rel="stylesheet" href="/datepicker/css/bootstrap-datepicker3.css"> <link rel="stylesheet" href="/datepicker/css/bootstrap-datepicker3.css">
<link rel="stylesheet" href="/css/footer.css"> <link rel="stylesheet" href="/css/footer.css">
@ -138,6 +108,7 @@
<h1>Mailtrain</h1> <h1>Mailtrain</h1>
<p>Self hosted newsletter app built on top of <a href="http://nodemailer.com">Nodemailer</a></p> <p>Self hosted newsletter app built on top of <a href="http://nodemailer.com">Nodemailer</a></p>
<p><a class="btn btn-info btn-md" href="https://github.com/andris9/mailtrain" role="button"><span class="glyphicon glyphicon-cloud-download" aria-hidden="true"></span> Source on GitHub</a></p>
<div class="clearfix"></div> <div class="clearfix"></div>
<div class="visible-xs-block "> <div class="visible-xs-block ">
@ -155,7 +126,7 @@
<footer class="footer"> <footer class="footer">
<div class="container"> <div class="container">
<p class="text-muted">&copy; 2016 Andris Reinman <a href="https://mailtrain.org">Mailtrain.org</a>, <a href="mailto:info@mailtrain.org">info@mailtrain.org</a>. Source at <a href="https://github.com/andris9/mailtrain">GitHub</a></p> <p class="text-muted">&copy; 2016 Andris Reinman <a href="https://mailtrain.org">Mailtrain.org</a>, <a href="mailto:info@mailtrain.org">info@mailtrain.org</a>. Source on <a href="https://github.com/andris9/mailtrain">GitHub</a></p>
</div> </div>
</footer> </footer>