EPUB to TBOOK TOOL CHANGELOG
BEGAN: 2024-11-11
# 2026
## 2026-03-19
Adds 'strip images' option
  Strip: removes image (faster)
  Keep:
    renames images chapterNumber-imageNumber.ext
    (where chapter number equals Nth html file in ebook order)
    updates md images to point to new image name
Adds 'strip links' option (which replaces link with link text)

# 2025
## 2025-11-29
Fixes bug related to reading and handling of '.htm' files.

## 2025-11-01
Converts faster (by only unzipping select files from epub).
Improves naming of zips, folders and files when using UTF8.

## 2025-10-30
Swaps backend to use custom zip and unzip script / library.
  (replaces custom tar + unzip scripts / libraries).
Searches further for author and title if meta lacks usual keys.

## 2025-10-17
Truncates output folder names so path lengths fit '.tar' limits.

## 2025-10-15 (Same)
Archives a single converted file directly (no enclosing folder).
  (Puts only a converted batch into a folder before archiving.)

## 2025_10-11 (24KB minified)
Removes all dependencies and uses no third party code.
  Removes 'turndown' (HTML to MD) library and related code.
  Removes 'fflate' (Unzip / Zip) library and related code.
Adds custom basic 'html to md' script (new separate project).
Adds custom 'unzip' script (new separate project).
Uses custom 'save tar' script (pre-existing separate project).
Reduces project weight.
Bundles and minified project into single HTML file under 24KB.

## 2025-05-24 (74KB)
Adds a text file of the whole book to the files exported.
  (In case an epub's structure differs to the book content.)

# 2024
## 2024-11-20 (74KB)
Refactors async await style to callback.
Extends to ASCII function to cover more look-alikes.
Removes more uncommon invisible characters from ASCII.
Processes text extracted for text file names.
Refactors uint8_is_valid_utf8 function.
Refactors drag drop logic.

## 2024-11-19
Adds license to main page (vs separate).

## 2024-11-18 (66KB)
Reads ePub metadata and saves to .json (with MD / ASCII values).
Uses metadata for naming folders in zip 'Author - Title'.
Updates about text and UI.
Adds save button to allow manual (re)downloading.

## 2024-11-17 (64KB)
Splits text processing logic to script 'process_text'.
Lets process_text replace non-ASCII with look-alikes: © -> (c).
Searches for more file types in .epub to capture all sections.
Minifies external markdown lib (1/3 of prior weight, now 11KB).
Adds 'to ASCII' option to front end.
Refactors some code to use chains for clarity.
Refactors towards more but simpler functions.

## 2024-11-16 (79KB)
Cleans text lightly in conversion (e.g. weird spaces to normal).
Uses fflate instead of JSzip and halves project weight.

## 2024-11-12 (139KB)
Removes external epub lib.
Reworks to need only jszip.
Chucks empty section files.
Prefixes numbers to text files to match order in .epub.

## 2024-11-11 (377KB)
Reads an epub file (uses external lib).
Gets HTML textContent of each chapter in an epub.
Converts user provided .epub to a .txt file.
Adds drag and drop option to receive files.
Reads and converts multiple dropped files.
Saves one zip containing one txt file per .epub.
  (Uses jszip, as the epub lib already uses it).
Makes a folder per .epub with file per section.
Names files using the first header found within a file.
Prefixes chapter files with number for sorting.
Auto creates and saves .zip of processed .epubs.
Converts to Markdown (via external lib).
Tweaks Markdown settings.
Cleans text slightly (e.g. 1 blank line maximum).