+234 Design System

Subscribe

The newsletter block. One field, one button, and a line saying what arrives and how often.

Inline, under an article

Get the Canada visa updates

One email when the eligibility lists or processing times change. Usually twice a month.

Unsubscribe in one click. We never share your address.

HTML
<form class="p234-subscribe">
  <h3 class="p234-subscribe__title">Get the Canada visa updates</h3>
  <p class="p234-subscribe__what">One email when the eligibility lists or processing times change. Usually twice a month.</p>
  <div class="p234-subscribe__row">
    <label for="sub-a" style="position:absolute;left:-9999px">Email address</label>
    <input id="sub-a" class="p234-subscribe__field" type="email" placeholder="you@example.com" autocomplete="email">
    <button class="p234-btn" type="submit">Subscribe</button>
  </div>
  <p class="p234-subscribe__note">Unsubscribe in one click. We never share your address.</p>
</form>

Invalid

Daily brief

The day's stories in one email, every weekday morning.

Enter an email address in the form you@example.com

HTML
<form class="p234-subscribe">
  <h3 class="p234-subscribe__title">Daily brief</h3>
  <p class="p234-subscribe__what">The day's stories in one email, every weekday morning.</p>
  <div class="p234-subscribe__row">
    <label for="sub-b" style="position:absolute;left:-9999px">Email address</label>
    <input id="sub-b" class="p234-subscribe__field" type="email" value="not-an-address" aria-invalid="true" aria-describedby="sub-b-err">
    <button class="p234-btn" type="submit">Subscribe</button>
  </div>
  <p id="sub-b-err" class="p234-subscribe__error">Enter an email address in the form you@example.com</p>
</form>

Say what arrives

The one line under the title is the component's real work. "Subscribe to our newsletter" asks for an address and promises nothing. Say what is in it and how often, and match the offer to the page: a reader on a visa article is being offered visa updates, not the daily brief.

After it is submitted

Replace the form with a confirmation in the same space, and say what happens next, including the confirmation email if there is one. Do not move the reader to another page: they were in the middle of an article.

Consent

Feature and product emails need the terms checkbox and a recorded consent version. The daily and weekly briefs do not. Those rules live with the email system, not here, but a block that collects an address for anything beyond the briefs has to carry the checkbox.

Tokens this component reads

--p234-color-ink--p234-color-ink-muted--p234-color-ink-subtle--p234-color-error--p234-color-field-bg--p234-color-field-border--p234-color-field-ink-placeholder--p234-type-headline-sm-*--p234-type-body-sm-*--p234-field-height--p234-field-radius--p234-border-thick--p234-measure-text