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.
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:
Redact gives you both.
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.
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.
The mode picker shows five small live samples, not five adjectives. Each is grounded in a landmark of the form:
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 Studio’s source picker brings you texts worth erasing, each fetched server-side, cached, throttled, and properly attributed:
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.
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.
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.
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.
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):
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.
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.