IDUNNBACKLIST / VERSION 1.0.0

Your backlist,
ready for its next chapter.

A practical field guide to replacing a shared author page in finished EPUBs.

Local browser application · English guide · Fictional practice books included

Start here

Extract the complete buyer ZIP into a folder you control. Open app/IdunnBacklist.html in desktop Google Chrome. Keep its sibling files together. No command line, installer, account, server, internet connection or EPUB editor is required to run the app. The free practice kit includes this guide and examples, but the application is supplied in the buyer package.

Tested on Ubuntu 22.04.5 LTS with Google Chrome 152.0.7977.82. A 390px viewport and desktop 200% page zoom were tested separately; combining 390px with 200% zoom requires horizontal scrolling. mobile operating systems, Windows and macOS were not. Use a desktop computer with enough memory for your batch. Start small if you have large image-heavy books.

IdunnBacklist running locally with the fictional Mira Fen books loaded
1. The author’s desk: original EPUBs are loaded locally. Every page and catalog identity is chosen explicitly.

Your first six editions

  1. Click Try the fictional backlist. This loads three original CC0 practice books and a three-title catalog. The URLs use example.com; they are not live store listings.
  2. For Lantern Harbor, select Also by Mira Fen — EPUB/Text/also-by.xhtml and catalog ID harbor-1. For The Brass Tide use the same page path and harbor-2. For Winter Signal use harbor-3. Nothing is preselected.
  3. Expand Read all source text for each selected page. The entire page will be removed and replaced, including any text you might want to keep. The app cannot decide whether a page is safe to replace.
  4. Leave the sample biography and the Amazon/Neutral edition boxes selected. The two editions use their respective URL columns.
  5. Click Prepare previews. Review all six cards. Each one must list the other two books and omit its own catalog ID. Each card names the page and package entry that will change.
  6. Check each whole-page replacement box. Click Export reviewed editions, then the new Download IdunnBacklist-editions.zip link. Extract the downloaded ZIP.

Expected result: six EPUBs plus report.html and report.json. In harbor-1-neutral.epub, the new page lists The Brass Tide and Winter Signal with https://example.com/books/harbor-2 and https://example.com/books/harbor-3. It contains “Mira Fen writes coastal mysteries.” Chapters and navigation retain their original decompressed bytes. The free kit’s examples/IdunnBacklist-editions.zip contains actual exported results to inspect.

Real preview of Lantern Harbor's Amazon edition, with changed entries and whole-page confirmation
2. The replacement preview shows self-exclusion, changed entries and retained heading IDs. The displayed link text is a non-navigating preview; exported EPUB links use the selected URL column.

Bring your own books

Start with backup copies of your original EPUBs. Click Start new workspace to clear the loaded books and project bindings, then apply your catalog and choose Add EPUBs. This reset keeps your editor text and existing downloaded files; it clears applied mappings and approvals. Nothing is saved automatically when the tab closes.

The app supports a deliberately narrow operation: replace one existing, non-navigation XHTML reading-order page per book. The page must have exactly one h1 heading. If your catalog shares a file with the final chapter, split it first using an EPUB editor such as calibre or Sigil. Do not select the chapter and assume prose will survive: the complete selected page is replaced.

DRM-free EPUB 3, one package/rootfile, reflowable layout, valid UTF-8 XML and Stored/Deflate ZIP are required. Encryption, font obfuscation, signatures, EPUB 2, fixed layout, scripts, media overlays, audio/video, forms, embedded MathML, embedded SVG properties, fallbacks, XML bases, DOCTYPE/entities and remote embedded resources are refused. Standalone SVG resources with supported local references are checked. Some uncommon valid EPUBs are deliberately refused, including unmanifested resources, CSS imports/escapes, unsupported references, literal percent signs in archive paths, and non-simple retained IDs. The app does not repair invalid EPUBs or certify general conformance.

Every imported batch is atomic: if a file is refused, none from that import is added. Already loaded books and settings remain. Re-select only the supported files or correct the rejected file in its authoring tool. Never remove DRM as part of this workflow.

Prepare the shared catalog

Use Import catalog CSV, or edit the text area and click Apply catalog. Use UTF-8 text and this exact header, in this order:

book_id,title,series,order,amazon_url,kobo_url,neutral_url

Every row needs a unique ID and title. IDs use 1–64 ASCII letters, numbers, underscores or hyphens, starting with a letter or number. Case-colliding IDs and reserved object keys are refused. Titles and series may contain Unicode, commas and line breaks; quote CSV cells using double quotes and double any quote inside a quoted cell. The app preserves text values; it does not execute HTML or spreadsheet formulas. Use a text editor when handling untrusted CSVs, since spreadsheet programs may interpret formula-leading cells.

Order is an integer from 0 to 999999. Rows are sorted by series text, then numeric order; equal values keep input order. Title/series fields allow 300 characters each. Duplicate titles are allowed; identity comes only from the book ID. Map each loaded book explicitly. Two loaded books cannot share one catalog ID.

URLs must be complete HTTPS addresses, up to 2048 characters, without user information, whitespace or control characters; blank is allowed. A blank destination becomes plain title text in that edition. A separate acknowledgement is required in each affected preview. Links are not fetched, validated online or approved by a retailer.

The biography allows 2000 characters. Contact label allows 80 characters; provide both label and HTTPS address or leave both blank. All content is plain text. The page heading is “Also by the author”; this version does not offer cover images, rich text, excerpts or custom CSS.

Review, export and check

Select Amazon, Kobo and/or Neutral. These are column labels, not compatibility or retailer-compliance promises. Prepare previews and review each complete original page, new content, omitted current ID and missing links. Any input, mapping, catalog, biography, contact or edition change invalidates all previews and approvals. Unchecking a missing-link acknowledgement disables export until resolved.

The selected resource path, manifest ID, reading order and inbound body/heading IDs are preserved. References to other IDs in the selected page prevent replacement. All other decompressed archive entries retain their bytes, except the package XML: only its modification timestamp changes semantically, but serialization can change. ZIP compression, timestamps and overall archive bytes are not preserved. Exports use uncompressed ZIP entries, so output files can be larger than the originals.

Output names use the catalog ID and edition, for example harbor-1-neutral.epub. Your original files are never overwritten by the application. Choose a separate download/extraction folder and do not manually replace your master originals. Report HTML/JSON include input/output SHA-256 hashes, changed paths, retained IDs, omitted IDs and missing links.

Open an exported EPUB in an independent reader. Use its contents list to reach the new page, follow the previous chapter, and change font size. Check destinations by inspecting their addresses before following them. Run EPUBCheck separately when you need a full conformance check; it is not bundled into the browser app. Keep any retailer-specific review in your normal publishing workflow.

Checked in an independent reader

The six practice exports passed EPUBCheck 5.4.0. In native calibre 9.15.0 on Linux, the exported Lantern Harbor neutral edition opens through its original contents entry. The new page remains readable at a larger font size, and the previous chapter is intact. This is a test of the practice EPUBs, not a promise for every reader or retailer.

Exported author page open in native calibre with its original table of contents
3. The exported EPUB in calibre, reached from its contents list.
The exported author page with its body font increased from 16 to 28 pixels in calibre
4. The reader’s font control enlarges the replacement page.
Original preceding chapter open through the calibre table of contents
5. The preceding chapter remains in the original reading order.

Save a project. Repeat the update.

  1. After selecting your books/pages/IDs and applying the catalog, click Save project, then download the project JSON. Save it beside your backed-up original books.
  2. In a new workspace, use Open project. Re-select every original EPUB with Add EPUBs. SHA-256 hashes must match. Filenames can change; manuscript bytes cannot.
  3. Review the restored mappings, update the catalog or biography, prepare fresh previews and approve every edition again. Rebuild from the same originals to keep a simple repeatable workflow.

The project stores catalog/settings/mappings and hashes, never manuscript bytes or approval state. A changed manuscript requires a new workspace and explicit remapping. All saved-project bindings must be reselected before export; to intentionally reduce a saved batch, start a new workspace and map the smaller set. Replacing a previously generated page also works as a new mapping; it does not append a second catalog page.

Limits at a glance

InputBound
Books / editions10 books; up to 3 editions
Compressed EPUBs10 MiB each; 50 MiB batch
Expanded data60 MiB batch; 12 MiB per entry; 500 members/book
Output180 MiB estimated aggregate edition content; archive safety overhead also checked
Catalog / project100 titles; 256 KiB per CSV or project JSON

Processing yields between bounded inflation chunks and books. Cancel stops at the next processing boundary; final synchronous ZIP assembly may take a few seconds. A cancelled/failed operation preserves loaded inputs and settings. The synthetic ten-book test (49 MiB compressed, 59 MiB expanded, three editions) sampled about 1.72 GiB summed browser-process RSS; shared memory may be counted twice and this is not a guaranteed peak. Large batches need more working memory than their file size; reduce books or editions if your browser is under memory pressure.

When something needs attention

Message or situationNext step
Catalog header / quoting errorStart with examples/catalog.csv. Keep the exact header and seven cells per row; quote commas and line breaks.
No page or catalog ID selectedSelect both for every book. The app never guesses identity from title.
Another resource references an IDChoose a page whose inbound targets are only its body or sole h1. Edit the source in an EPUB editor if necessary; do not delete live footnotes blindly.
Hash does not match the projectReselect the original bytes used to save the project. Otherwise start a new workspace and remap the changed edition.
Output or input limit exceededUse smaller batches or fewer editions. No partial ZIP is offered.
Export button disabledApply catalog changes, prepare previews, approve every card and acknowledge every missing link.
Buttons do nothing after extractionOpen the extracted HTML in desktop Chrome, not the ZIP viewer. Keep app/vendor and app/example.js beside the HTML. Reload and start with the sample.
Unsupported structure, malformed XML or CRCRe-export a valid supported EPUB from your authoring tool. IdunnBacklist does not repair broken books.

Privacy and uninstall

Imports, previews, hashing and export occur in your browser. The supplied application has no network API, analytics, account, local storage or automatic upload. Imported source HTML is never rendered; source text is displayed as text. Only the app’s escaped generated content appears in previews. Following links from exported EPUBs is controlled by your reader and may use the network.

Projects contain author/catalog text and file hashes; reports contain book titles and hashes. Share them deliberately. Closing the tab clears the working session. To uninstall, delete the extracted app folder and any projects/downloads you no longer want. Browser download history is managed in your browser. Your source EPUBs remain wherever you stored them.

Included sample prose and catalog are original CC0 fiction. Screenshots are actual runtime captures, not device mockups. No retailer, device, income, accessibility-compliance or customer-acceptance claim is made.