Popularity
3.6
Stable
Activity
0.0
Stable
313
12
32

Description

Maktoub is a Ruby on Rails engine for email newsletters. Write your newsletter as you would write any view (erb partial). Maktoub sends your email in multipart as both html and text.

Code Quality Rank: L5
Monthly Downloads: 212
Programming language: Ruby
License: MIT License
Tags: Email     Email Templates     Newsletters     Engine    
Latest version: v0.5.0

Maktoub alternatives and similar gems

Based on the "Email" category.
Alternatively, view Maktoub alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of Maktoub or a related project?

Add another 'Email' Gem

README

Maktoub

Maktoub is a Ruby on Rails engine for email newsletters.

  • Write your newsletter as you would write any view (erb partial)
  • Maktoub sends your email in multipart as both html and text

Installation

  # Add this line to your Gemfile
  gem 'maktoub'

Then bundle install

Compatibility

Compatible with Rails 4+. For Rails 3.1+ use version 0.3.1

Usage

Configuration

You can run rails generate maktoub:config to generate the configuration file. This task creates a matkoub.rb initializer file (in config/initializer) Follow instructions inside the file to configure it the way you want.

Authoring

Create a newsletter as a normal view partial in app/views/maktoub/newsletters/. The subject of the newsletter will be automatically deduced from the partial's name.

Editing Styles

Create a view partial in app/views/layouts/maktoub/_styles.erb. Note that this completely overrides the styles that come with maktoub. You can copy the built-in styles and override them.

Sending messages

Maktoub comes with two rake tasks to allow you to:

  • send a test message to the "from" address of your newsletter.
  rake maktoub:test['name_of_my_newsletter_partial']
  • publish the newsletter to all your subscribers. If you have delayed_job installed then it will use it to deliver each email as a background job
   rake maktoub:mail['name_of_my_newsletter_parial']

Alternatively you have access to a Maktoub::NewsletterMailer ActionMailer object with a publish method

   Maktoub::NewsletterMailer.publish('my_newsletter_partial', name: 'User name', email: '[email protected]')

View in browser

To be able to view your newsletter in a browser add it to routes.rb.

  • mount the engine at a path of your choice. e.g. mount Maktoub::Engine => '/'
  • you would access the newsletter at: http://example.com/<mounted_path>/newsletter/my_awesome_newletter

Contributing

Send a pull request including documentation changes and tests.

TODO

  • create github page for project
  • allow management of multiple lists
  • allow rendering of newletter from remotely hosted views (e.g. S3)