Quick start

Now that you have Paperboy installed, you can set up your project and send your first campaign. The required parts of a successfully delivered campaign are its content, recipient list, and delivery-service configuration.

Start a new project

You can start a new project in the current working directory, or specify a path:

$ paperboy init
$ paperboy init [project]

At this point, you will have the initial structure for your project.

$ tree [project]
├── config.yaml
├── content
├── layouts
├── lists
└── themes

This is a good time to initialize your source version control (eg. Git) too.

Create a campaign

You’re ready to draft your first email campaign. Let’s call it “the-announcement”:

$ paperboy new the-announcement.md

This will create a new Markdown template in your content directory named the-announcement.md. The body of this template will be rendered into both HTML and plain text parts of your email campaign.

Similar to Hugo and other static site builders, the template also carries a front matter section with campaign metadata. This metadata includes email subject, sender, date, and any additional parameters you may want to pass to the layout or theme template.

Set up a recipient list

A recipient list is an enumeration of metadata about people who will receive your campaign. These lists are independent from campaign content, but can forward per-recipient metadata to your campaign body and templates.

$ paperboy new list in-the-know.yaml

Configure delivery method

Last step before sending your campaign is to configure your method of delivery, and optional identity confirmation. Paperboy uses SMTP protocol to deliver email, so you will have to specify your server in the config.yaml file.

  url: smtp://email.us-east-1.service.com
  user: smooth-sender
  pass: shhhhh-secret

You may configure the delivery server via the smtp key of your config.yaml. Please refer to configuration docs about further configuring your delivery settings.

You’re ready to send

Now that you’ve configured Paperboy and checked your spelling and grammar, it’s time to send your campaign.

$ paperboy send the-announcement in-the-know

This command will send “the-announcement.md” campaign to “in-the-know.yaml” recipient list. Please be patient as the service will send an individually rendered email to each recipient, rather than doing a CC on a single email.