Title: Redact — Blackout &amp; Erasure Poetry
Author: Johnathon Williams
Published: <strong>August 28, 2026</strong>
Last modified: August 28, 2026

---

Search plugins

![](https://ps.w.org/redact-blackout-erasure-poetry/assets/banner-772x250.png?rev
=3670871)

![](https://ps.w.org/redact-blackout-erasure-poetry/assets/icon.svg?rev=3670871)

# Redact — Blackout & Erasure Poetry

 By [Johnathon Williams](https://profiles.wordpress.org/oddjar/)

[Download](https://downloads.wordpress.org/plugin/redact-blackout-erasure-poetry.1.0.0.zip)

 * [Details](https://wordpress.org/plugins/redact-blackout-erasure-poetry/#description)
 * [Reviews](https://wordpress.org/plugins/redact-blackout-erasure-poetry/#reviews)
 *  [Installation](https://wordpress.org/plugins/redact-blackout-erasure-poetry/#installation)
 * [Development](https://wordpress.org/plugins/redact-blackout-erasure-poetry/#developers)

 [Support](https://wordpress.org/support/plugin/redact-blackout-erasure-poetry/)

## Description

A blackout poem published as an image is a picture of a poem, not a poem.

And an image is how the form travels: make the poem in an app or a browser toy, 
press export, post the JPEG. The poem you labored over goes into the world as pixels—
unsearchable, unselectable, silent to a screen reader, soft at every zoom.

Redact ends that. The poem you make here is published as real HTML on your own site.
A reader can select the surviving words and copy them. A search engine can find 
them. A screen reader reads the poem — the poem alone, the kept words in order, 
not three hundred words of source with mumbling in between. And the untouched source
text waits one click below, for anyone who wants to see what the poem was carved
from.

#### How it works

Bring a text: paste one, pull one from a source, or take one off the starter shelf.
Then erase it, in either of the two ways this art has always been made:

 * **Blackout.** Circle the words you want to keep — lightly, in pencil, the way
   practitioners have done it since the newspaper days. When the poem is there, 
   press **Ink it**, and the bars sweep across everything else. The commit is the
   best moment in the tool; you will press Undo just to watch it again.
 * **Erasure.** Every word visible; click a word and it disappears; click the gap
   and it returns. Live, reversible, quiet.

Redact gives you both.

#### The Studio

A toolbar button opens the Redaction Studio: the full screen, the text laid out 
as a field of words, a thin strip of tools, nothing else. Drag paints marks across
words like a marker stroke. Undo and redo track every step, with a counter. A density
slider and a **Suggest** button propose a pencilling — a grammar matcher, running
entirely in your browser, that reads for sentence skeletons so its proposals scan
like syntax rather than confetti. **Re-roll** deals another hand. Suggestions arrive
as pencil, never ink; the poet commits, or nothing does.

For discipline, there are two chips. The 15-word challenge borrows its limit from
the New York Times’ student blackout contests. **In order** enforces M. NourbeSe
Philip’s mother-document rule: each new word must come at or after your last — forward
through the text, never back.

#### The keyboard

Redact’s word canvas is fully keyboard-native: arrows move word to word — up and
down move by the line as displayed — Space toggles, Shift with arrows paints a stroke,
P flips between blackout and erasure, Escape leaves. Every word is a real toggle
button to assistive technology.

#### Five looks, all of them earned

The mode picker shows five small live samples, not five adjectives. Each is grounded
in a landmark of the form:

 * **Marker** — hand-pulled black bars, edges roughened by a seeded filter so your
   poem’s bars are its own and stay put. After Austin Kleon’s _Newspaper Blackout_.
 * **White-out** — correction fluid; the survivors stand in place. After Mary Ruefle’s
   _A Little White Shadow_.
 * **Blanks** — the erased words simply gone, their space held open. After Ronald
   Johnson’s _Radi os_.
 * **Ghost** — the source faint behind full-strength survivors. After Jenny Bervin’s
   _NETS_.
 * **Bars** — flat, hard-edged, typewriter face. The declassified document.

Print styles are included, with an ink-saver block style that outlines the bars 
on paper — erasure poems are wall art, and toner is money.

#### The sources

The Studio’s source picker brings you texts worth erasing, each fetched server-side,
cached, throttled, and properly attributed:

 * **The starter shelf** — bundled classics and oddities, no network at all: Shelley,
   Blake, Dickinson, the openings of _Pride and Prejudice_, _Moby-Dick_, _A Tale
   of Two Cities_ — and _The Maltese Falcon_, public domain as of January 2026.
 * **Your own archive** — erase your old posts and drafts. Works on every site.
 * **Project Gutenberg** — seventy thousand books, served in erasable passages.
 * **Weather forecast discussions** — the National Weather Service’s daily shop 
   talk about fog, pressure, and light. Pick your local office.
 * **PoetryDB** — erase a classic poem into a new one.
 * **Federal Register** — fresh bureaucratic sublime every business day.
 * **Chronicling America** — a century of newspaper pages from the Library of Congress,
   degraded OCR and all. The degradation is a feature.
 * **Wikipedia’s featured article** — a daily communal prompt. The poem credits 
   the article and carries its CC BY-SA license automatically; the plugin handles
   the paperwork.
 * **Congressional Record** — what Congress said yesterday, with a free api.data.
   gov key.

The block remembers where its text came from. A Source panel in the sidebar names
the source, links the original, shows the license, and can fetch the text fresh —
with a plain warning that marks reset.

News articles are deliberately absent. Whether an erasure of contemporary journalism
is fair use is a call only the poet can make, so Redact will not fetch an article
for you — paste what you stand behind. The Code of Best Practices in Fair Use for
Poetry is linked right under the paste box.

#### Accessibility, thought through

The markup pattern was built from the screen-reader support tables, not hope. The
redacted runs are hidden from assistive technology, so the poem reads as the poem—
what a sighted reader gets is exactly what a screen reader gets. The figure announces
itself as an erasure and names its source. The full text sits in a native disclosure
element, keyboard-complete by birth. An optional setting announces one “[erased]”
per redacted stretch, for poets who want the gaps themselves audible. Erased text
cannot be selected or copied on the published page.

#### The smaller courtesies

Attribution as a first-class field, because an erasure credits what it erases. A
word count that watches you work. Autosave and revisions cover your drafts, pencil
marks included. A paragraph already in your post transforms straight into an Erasure
Poem from the block switcher. One click exports the poem as a PNG for the feeds —
a tight poem-only crop, a full page, or the Instagram sizes, live preview throughout—
with the poem itself as the image’s alt text. Straight quotes stay straight in your
source; WordPress does not smarten a poet’s characters while Redact is watching.
And the front end loads no JavaScript at all: the published poem is CSS entire.

#### Who made this

I am, regrettably, a poet, and I have made blackout poems the usual way: in an app
that held my poem hostage as a JPEG. The poem lives where it’s published. On the
web that has to mean text, so I built the tool that publishes the poem as text —
free software, GPL, no premium tier — because a whole literary form should not have
to live inside other people’s image formats.

### Source Code & Bundled Libraries

The human-readable source of all compiled JavaScript and CSS ships inside the plugin:
the `src/` directory holds the original code and `package.json` the build configuration.
To build: install Node.js 22, then run `npm install` and `npm run build` from the
plugin directory (the toolchain is the standard `@wordpress/scripts`).

Bundled third-party libraries (all GPL-compatible):

 * [html-to-image](https://github.com/bubkoo/html-to-image) (MIT) — renders the 
   poem-image export in your browser; nothing is sent to any server.
 * [@wordpress/icons](https://github.com/WordPress/gutenberg/tree/trunk/packages/icons)(
   GPL-2.0-or-later) — toolbar icons.

### External Services

The Studio’s source picker fetches texts from the services below. Every call is 
made server-side by your own site, only when an editor picks that source and asks—
never on a schedule, never from the published page, which makes no network requests
at all. What is sent: the search term or document reference you typed or picked,
plus a User-Agent header naming the plugin and your site’s address (several of these
services require a contact; your site’s URL is the contact). No personal data is
transmitted. Some services answer with the address of the text itself, which the
plugin then fetches; each entry below says where that address points.

 * **Project Gutenberg**, via the Gutendex API ([gutendex.com](https://gutendex.com/))—
   book search and metadata; the book’s plain text is then fetched from the address
   the API returns, on gutenberg.org or its mirrors. [Terms of use](https://www.gutenberg.org/policy/terms_of_use.html)·
   [Privacy](https://www.gutenberg.org/policy/privacy_policy.html)
 * **PoetryDB** ([poetrydb.org](https://poetrydb.org/)) — classic poems. An open
   community API; it publishes no formal terms of service or privacy policy, and
   its documentation and license live on GitHub. [API documentation](https://github.com/thundercomb/poetrydb/blob/master/README.md)·
   [License (GPL v2)](https://github.com/thundercomb/poetrydb/blob/master/LICENSE.txt)
 * **National Weather Service** ([api.weather.gov](https://www.weather.gov/documentation/services-web-api))—
   forecast discussions; the product text is fetched from the address the listing
   returns, on the same api.weather.gov host. [Disclaimer](https://www.weather.gov/disclaimer)·
   [Privacy](https://www.weather.gov/privacy)
 * **Federal Register** (www.federalregister.gov) — daily documents; the document
   text is then fetched from the raw-text address the API returns, on the same site.
   The Register is published jointly by the National Archives and the Government
   Publishing Office. [NARA privacy](https://www.archives.gov/global-pages/privacy.html)·
   [GPO privacy](https://www.gpo.gov/privacy)
 * **Library of Congress, Chronicling America** ([loc.gov](https://www.loc.gov/apis/))—
   historic newspaper pages; the page text is fetched from the address the item’s
   record returns, on Library of Congress hosts. [Legal notices](https://www.loc.gov/legal/)·
   [Privacy](https://www.loc.gov/legal/#privacy_publicity)
 * **Wikipedia** — article text from en.wikipedia.org, and the daily featured article
   from api.wikimedia.org. [Terms of use](https://foundation.wikimedia.org/wiki/Policy:Terms_of_Use)·
   [Privacy](https://foundation.wikimedia.org/wiki/Policy:Privacy_policy)
 * **GovInfo** ([api.govinfo.gov](https://www.govinfo.gov/)) — the Congressional
   Record, with an api.data.gov key you supply; the key is sent to api.govinfo.gov
   as a query parameter with each request. [Site policies](https://www.govinfo.gov/about/policies)·
   [GPO privacy](https://www.gpo.gov/privacy)

The starter shelf and your own archive use no network at all. Fetched texts are 
cached in a table on your own site so a source is asked once per text, and every
source is rate-limited below its published ceiling.

## Screenshots

[⌊Pencil circles on the word canvas — marker mode, mid-composition.⌉⌊Pencil circles
on the word canvas — marker mode, mid-composition.⌉[

Pencil circles on the word canvas — marker mode, mid-composition.

[⌊Ink it: the bars sweep, the poem stands.⌉⌊Ink it: the bars sweep, the poem stands
.⌉[

Ink it: the bars sweep, the poem stands.

[⌊The Redaction Studio — the text as a field of words, tools in one thin strip.⌉⌊
The Redaction Studio — the text as a field of words, tools in one thin strip.⌉[

The Redaction Studio — the text as a field of words, tools in one thin strip.

[⌊The source picker: nine places to find a text worth erasing.⌉⌊The source picker:
nine places to find a text worth erasing.⌉[

The source picker: nine places to find a text worth erasing.

[⌊The published poem — real, selectable HTML, with the source one click below.⌉⌊
The published poem — real, selectable HTML, with the source one click below.⌉[

The published poem — real, selectable HTML, with the source one click below.

[⌊All five modes: Marker, White-out, Blanks, Ghost, Bars.⌉⌊All five modes: Marker,
White-out, Blanks, Ghost, Bars.⌉[

All five modes: Marker, White-out, Blanks, Ghost, Bars.

[⌊The export dialog with live preview.⌉⌊The export dialog with live preview.⌉[

The export dialog with live preview.

## Blocks

This plugin provides 1 block.

 *   Erasure Poem Make a blackout or erasure poem. Bring a source text, mark the
   words you want to keep, and ink the rest — published as real, readable HTML.

## Installation

 1. Install and activate. There is no settings page; everything happens in the block
    editor.
 2. Add the **Erasure Poem** block to a post — or select a paragraph already there 
    and transform it into one from the block switcher.
 3. Bring a text: paste one, take one off the starter shelf, or open the **Redaction
    Studio** from the block toolbar and pull one from the sources. Mark the words you
    keep, ink the rest, publish.

After activation, a notice in the admin offers a sample: one click makes a private
draft with Shelley’s Ozymandias already blacked out, ready to re-erase. Make it,
mark it, and you have met the whole tool.

One source asks for a key. The Congressional Record draws on GovInfo, which requires
a free api.data.gov key: open the Studio, choose Congressional Record, and paste
the key into the field there — administrators only. The key is stored on your own
site and can be removed from the same panel. Every other source needs no setup.

## FAQ

### Is the redaction secure?

No, and it must not be used as if it were. The erased words remain in your page’s
HTML — hidden from readers, screen readers, and copy-paste, but present in the source,
where this art form keeps them on purpose (the full text is one click away by design).
Redact is a poetry tool. Do not use it to publish documents containing anything 
that must actually stay secret.

### What does a screen reader read?

The poem — the kept words, in order, and nothing else. The wrapping figure announces“
Erasure poem” with your title and attribution, and the full source text is available
through the same disclosure control every reader gets. If you want the redactions
audible, one setting reads a single “[erased]” per blacked-out stretch.

### Can I change my mind after inking?

Freely, and on the spot: once a poem is inked, clicking a bar lifts it and clicking
a kept word redacts it — no second Ink required. In erasure polarity every click
is live from the start. One consequence worth knowing: switching from erasure back
to blackout returns your kept words as pencil circles and un-inks the poem — press
Ink once more and it stands again. The source text is locked once marks exist — 
editing it would silently shift every mark — but “Edit source text” is there when
you mean it, with a plain warning that marks reset.

### What about the poem’s copyright?

Your erasure of a public-domain text is yours. Texts from the starter shelf and 
the bundled sources are public domain (the picker names each license). Wikipedia
is the exception: its text is CC BY-SA, so a poem erased from it carries the same
license and credits the article — Redact appends that credit automatically and warns
you at ingestion, because a BY-SA poem cannot later be exclusively licensed to a
journal.

### Why won’t it fetch a news article?

Because the plugin fetching a full article is verbatim reproduction before any transformation
has happened, and that call belongs to you, not to software. Paste what you judge
fair use; the CMSI Code of Best Practices in Fair Use for Poetry — which recognizes
erasure — is linked beside the paste box.

### Does it work with my theme?

Yes. The poem inherits your theme’s type and colors under each mode’s own ground,
and the block supports the standard typography, color, and spacing controls.

### Is it really free?

Entirely. GPL, like WordPress itself. Blackout poetry made me no money either.

## Reviews

There are no reviews for this plugin.

## Contributors & Developers

“Redact — Blackout & Erasure Poetry” is open source software. The following people
have contributed to this plugin.

Contributors

 *   [ Johnathon Williams ](https://profiles.wordpress.org/oddjar/)

[Translate “Redact — Blackout & Erasure Poetry” into your language.](https://translate.wordpress.org/projects/wp-plugins/redact-blackout-erasure-poetry)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/redact-blackout-erasure-poetry/),
check out the [SVN repository](https://plugins.svn.wordpress.org/redact-blackout-erasure-poetry/),
or subscribe to the [development log](https://plugins.trac.wordpress.org/log/redact-blackout-erasure-poetry/)
by [RSS](https://plugins.trac.wordpress.org/log/redact-blackout-erasure-poetry/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 1.0.0

 * First release. The word canvas with blackout and erasure polarities; pencil-then-
   ink marking; the Redaction Studio with drag-paint, undo history, the suggestion
   engine, the 15-word challenge, and the in-order rule; five visual modes with 
   a live-preview picker; nine text sources with caching, attribution, and a provenance
   panel with re-fetch; paragraph-to-poem transform; the accessible published-poem
   markup with source disclosure; print styles with an ink-saver variant; PNG export—
   poem-only crop through full page — with the poem as alt text; full keyboard support
   throughout.

## Meta

 *  Version **1.0.0**
 *  Last updated **3 days ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 6.8 or higher **
 *  Tested up to **7.1**
 *  PHP version ** 7.4 or higher **
 * Tags
 * [poem](https://wordpress.org/plugins/tags/poem/)[poetry](https://wordpress.org/plugins/tags/poetry/)
 *  [Advanced View](https://wordpress.org/plugins/redact-blackout-erasure-poetry/advanced/)

## Ratings

No reviews have been submitted yet.

[Your review](https://wordpress.org/support/plugin/redact-blackout-erasure-poetry/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/redact-blackout-erasure-poetry/reviews/)

## Contributors

 *   [ Johnathon Williams ](https://profiles.wordpress.org/oddjar/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/redact-blackout-erasure-poetry/)