thorium-reader

A cross platform desktop reading app, based on the Readium Desktop toolkit

BSD-3-CLAUSE License

Stars
1.8K

Bot releases are visible (Hide)

thorium-reader - Thorium Reader v1.7.0

Published by danielweck over 3 years ago

Summary

Version 1.7.0 was released on 14 May 2021.

Total Downloads of this version

This release includes the following (notable) new features, improvements and bug fixes:

  • Major refactor: database migration (SQLite3 / LevelDown) to Redux (JSON serialization). The DB backend will be completely removed in a future version (probably 1.8), which will complete the fix for large filesystem allocation
  • Fixed LCP passphrase hint which was incorrectly escaped (URL slashes), and English grammar was incorrect
  • Updated Chinese translation
  • Added korean translation
  • Added TTS synthetic speech voice selection (overrides engine default which selects based on language, so this forces user preference)
  • Faster audio playback rate option (2 -> 3x)
  • Fixed DAISY support, now allows opening files with .zip extension in addition to .daisy, allow subfolder(s) instead of just root .opf package, and allow opening OPF directly from not-zipped filesystem
  • Fixed OPDS description display (HTML markup)
  • Fixed MathML support regression bug, and updated to latest MathJax version, and now check for authored MathJax to avoid conflits
  • Fix: the auto-generated EPUB for "about Thorium" is now force-refreshed at every app version update
  • Fixed "all books" library view which was not reliable
  • Cancellable downloads (LCP, OPDS)
  • Fixed MacOS window manager issue
  • Fixed OPDS search (XML UTF8 BOM), en|decodeURIComponent
  • Fixed support for PDF files with unicode characters in filenames
  • Fixed OPDS search input field and home state which was not reset during feed browsing
  • Fixed OPDS authentication dialog cancel button
  • Fixed HTTP streamer, workaround for publication resource URLs / relative paths with multiple consecutive slashes
  • Fixed bookmark icon, and added progression + sorting in bookmark navigation list
  • ... and many more smaller changes listed below.

Full Change Log

https://github.com/edrlab/thorium-reader/blob/develop/changelogs/CHANGELOG-v1.7.0.md#full-change-log

thorium-reader - Thorium Reader v1.6.0

Published by danielweck over 3 years ago

Summary

Version 1.6.0 was released on 16 February 2021.

Total Downloads of this version

This release includes the following (notable) new features, improvements and bug fixes:

  • Thorium is now based on Electron version 11.
  • The Windows installer is now code-signed (no more scary warning messages)
  • Localization: updated Japanese and Spanish translations, added Finnish, Russian, Chinese translation.
  • Accessibility: improved screen reader detection to trigger force-refresh in the content webview.
  • Support for DAISY3 audio-only, audio+text and text-only talking books.
  • OPDS authentication: OAuth2 access/refresh token, HTTP cookies, SAML for Library Simplified (Lyrasis).
  • OPDS browser: better UI layout (navigation links, facets, groups).
  • The "about Thorium" information is now an automatically-generated Web Publication which opens in the reader view.
  • LCP: clarified error message for license rights.start in the future, vs. LSD expired status, added sanity check / safeguard for not-well-formed licenses (e.g. HTTP response error code body, or corrupted local file), localized URL hint hyperlink.
  • PDF: significant improvements, performance, bug fixes, layout features (still based on Mozilla PDF.js).
  • Library / bookshelf: fixed open publication from filesystem / drag-and-drop, removed unnecessary confirm dialog for importing a small number of publications using drag-drop.
  • User interface: fixed long unbreakable titles in publication info dialog, title/author ellipsis on 2-lines max layout.
  • Reader view: added support for user-installed system fonts (in addition to ReadiumCSS predefined typefaces), reflowable documents are now paginated by default (was scroll mode before), fixed the hyperlink :target CSS styles (temporary green outline), prevent mouse-drag on UI controls, links, etc. inside EPUB HTML, PDF documents.
  • Reader settings: Reduce Motion and Disable Footnotes display settings (+ moved MathJax toggle).
  • New reader navigation feature: goto begin/end of publication, CTRL HOME/END keyboard shortcuts, and shift-click on left/right arrow button icons.
  • Reader "goto page" now has a keyboard shortcut, and works with authored pageList as well as intrinsic page units such as with fixed layout FXL publications, PDF, etc.
  • Reader interaction: mouse wheel scroll and touchpad two-finger swipe/drag to turn pages left/right (on bottom footer progress bar and arrows).
  • Reader navigation panel: increased table of contents interline.
  • Reader footnotes: fixed same-document content restriction.
  • Search: fixed DOM / XHTML parsing issue, added keyboard shortcuts for find previous/next commands.
  • Divina: audio/video streaming now works.
  • Database: internal application state saved at every 3 minutes interval, plus persistence guaranteed on app shutdown (was too frequent before).
  • Development: added WebPack bundle analyser (dependency analysis), replaced deprecated TSLint with ESLint + Prettier (code linting / formatting checks).
  • ... and many more smaller changes listed below.

Full Change Log

https://github.com/edrlab/thorium-reader/blob/develop/changelogs/CHANGELOG-v1.6.0.md#full-change-log

thorium-reader - Thorium Reader v1.5.0

Published by danielweck about 4 years ago

Summary

Version 1.5.0 was released on 12 October 2020.

Total Downloads of this version

This release includes the following (notable) new features, improvements and bug fixes:

  • Added Portuguese, Lithuanian and Italian localizations
  • Added search feature, to find text in publication documents (accessible paginated list of results + visual highlights with sequential navigation)
  • Added support for Divina "visual narrative" publications (Readium Web Pub Manifest)
  • Added preliminary integration of the PDF.js rendering engine, includes support for LCP DRM protection (Readium Web Pub Manifest packaging)
  • Added support for RTL Right-To-Left in TOC Table Of Contents, Landmarks, etc. navigation panels
  • Fixed support for secondary monitor (application windows on dynamic display coordinates / dimensions)
  • Fixed command line and file explorer integration (opening of reader windows)
  • Tweaked HTTP timeout value (request/response cycles for OPDS publication downloads, W3C Web Publications / AudioBooks and Readium Web Pub Manifest retriever / packager, etc.)
  • Improved display of OPDS indirect acquisitions (now indicate file type in import button)
  • Fixed issue where session settings section was not refreshing when language was changed
  • Application runtime upgraded to Electron 9 (and corresponding NodeJS update too)

Full Change Log

https://github.com/edrlab/thorium-reader/blob/develop/changelogs/CHANGELOG-v1.5.0.md#full-change-log

thorium-reader - Thorium Reader v1.4.0

Published by danielweck about 4 years ago

Summary

Version 1.4.0 was released on 25 July 2020.

This release includes the following (notable) new features, improvements and bug fixes:

  • Microsoft Windows: fixed a pagination / scrolling random DPI bug, which was preventing turning pages, in the middle or at the end of documents
  • Support for EPUB3 FXL Fixed Layout two-page spreads
  • Support for EPUB3 Media Overlays and TTS readaloud (both with optional clean overlay view / caption mode), with same keyboard shortcuts as audiobooks
  • Localisation: new Japanese user interface translation, fixed Spanish labels (missing and existing), corrected English typos
  • In preparation for linking to annotations and search results, navigator now supports DOM Range scroll-into-view (paginated and scroll views), which allows sub-element referencing (for when HTML text spans across CSS columns or scrolling viewport boundaries)
  • Development: added fast compiler option, skip Typescript type checking (transpile only)
  • Production builds continue to use LevelDown database for the CouchDB adapter, but automated CI and developer builds now use SQLite3 instead of the obsolete JsonDown store which was slow and buggy (uncontrolled file size growth)
  • LCP/LSD "return" and "renew" errors now trigger a toast notification to inform the user, friendlier passphrase dialog error reporting, and fixed clipboard copy right
  • Audiobooks: no cover was causing an internal crash, support for float values in duration time syntax with iso8601 format
  • Improved fullscreen UI layout
  • LCP or OPDS download without Content Type attribute in Link, now fallback to HTTP response headers (content-type/disposition)

Full Change Log

https://github.com/edrlab/thorium-reader/blob/develop/changelogs/CHANGELOG-v1.4.0.md#full-change-log

thorium-reader - Thorium Reader v1.3.0

Published by danielweck over 4 years ago

Summary

Version 1.3.0 was released on 28 April 2020.

This release includes the following (notable) new features, improvements and bug fixes:

  • Improved audiobook user interface: removed redundant previous/next navigation arrows, playback progress indicator now with better visual styling, added rate/speed control.
  • Fixed converter from W3C audiobook format (LPF packaged Web Publications) to Readium Web Pub Manifest.
  • Added LCP support for audiobooks, with handling of additional file extensions, HTTP content type.
  • Parsing of accessibility metadata from W3C format, native support in Readium2 data models.
  • Fullscreen mode: previous/next accessible arrow buttons (mouse and keyboard), and optimal use of screen real estate (removed unnecessary margins).
  • Improved accessibility of buttons with toggle state, using aria-pressed so that screen readers announce the state change adequately.
  • Bugfix: language was not updated in reader window (locale Redux watcher was missing)
  • Cover images in library window are now better aligned when dealing with various aspect ratios, also added visual emphasis in publication rows.
  • Bugfix: in development mode, quickly going back to library window (local bookshelf) from a recently-opened reader window was causing an error popup (timeout) due to stale BrowserWindow reference (destroyed reader instance).
  • TOC and detailed bottom bar info: when missing human-readable title, use link href (relative resource path)
  • Fixed severe underlying issue with HTTP streamer (custom Electron protocol handler for streaming media, like audio/video), reliable handling of large resources.
  • Added support for background audio looping soundtrack, also enabling of video/audio autoplay.
  • Added Dutch localization.
  • Spanish localization: fixed some translations and added missing readme.
  • MacOS application DMG bundle now signed and notarized.

Full Change Log

https://github.com/readium/readium-desktop/blob/develop/changelogs/CHANGELOG-v1.3.0.md#full-change-log

thorium-reader - Thorium Reader v1.2.1

Published by danielweck over 4 years ago

Summary

Version 1.2.0 was released on 25 March 2020

Note that a 1.2.1 patch was created on March 28 (see https://github.com/readium/readium-desktop/compare/v1.2.0...f1251186bd99cd7f9c6bca5fe9f3563f548a9d31 )

This release includes the following (notable) new features, improvements and bug fixes:

  • Configurable keyboard shortcuts (including new commands, for example "goto toolbar", "boomark", "goto navigation panel"): editor user interface with auto-capture (i.e. automatic detection key events) or fine-grain user selection (i.e. choice of modifier keys + main action key from a list of predefined options), as well as alternative configuration method for advanced users: raw config file (JSON format)
  • There is now a keyboard-accessible (tab / shift-tab) hidden link at the beginning of publication documents in order to redirect focus (notably, screen reader cursor) to the currently-linked reading location (for example TOC heading, bookmark destination, etc.)
  • Fixed accessibility-related keyboard focus issues: hyperlinks inside publication documents (notably: visual temporary outlining of link target), TOC heading links and bookmark destinations (landing point above the main frame now with clearer label, tested with several screen readers, which do not navigate into the frame's keyboard focus consistently).
  • Fix for keyboard-accessible cover images in the bookshelf (local library and remote publication catalogs), and for some UI elements which were not labelled correctly (e.g. the "delete" cross icon in OPDS catalogs)
  • Preliminary support for AudioBooks (Packaged Readium Web Pub Manifest format): separation of publication types in the local bookshelf, handling of time bookmarks, display of audio metadata (duration, number of tracks), support for audiobooks without TOC Table Of Contents (instead: audio files in reading order, with "chapter" description label / title), application of ReadiumCSS styling (font size and family, color theme) etc. TODOs: https://github.com/readium/readium-desktop/issues?q=is%3Aissue+is%3Aopen+label%3Aaudiobooks
  • Spanish translation (in addition to existing English, French and German)
  • Bookmarks list in the navigation panel are now ordered (as per the linear reading progression of the publication)
  • Bookmarking now supports text selection (automatically sets the bookmark description / label), and multiple bookmarks per page spread can be created
  • In the "goto page" feature (navigation panel), the nearest preceding EPUB pagebreak is shown to provide information about the current reading context
  • The bottom interactive "reading progress" bar now correctly handles mouse clicks offset (percentage progression into individual spine items, text and audiobooks)
  • Fixed significant performance issues in publication documents, which were due to how Chromium renders HTML (including Readium CSS), and prioritizes paint requests for large documents textures (e.g. GPU 2D/3D accelerated selections/annotations, but also weird edge cases with night and sepia modes)
  • OPDS browsing improvments, notably: support for facets (to be continued)
  • Fixed bug due to HTTP response logging (there was no safeguard for the error case of offline / network down conditions)
  • Various low-level code refactorings, in order to scale architecture for future updates / feature additions
  • Fixed memory leak: publication ZIP was not deallocated (filesystem handle freed) when the last reader window closed
  • Latest updates available for NPM packages / library dependencies, including Electron version 8 (Chromium version 80)

Full Change Log

https://github.com/readium/readium-desktop/blob/develop/changelogs/CHANGELOG-v1.2.0.md#full-change-log

thorium-reader - Thorium Reader v1.1.1

Published by danielweck almost 5 years ago

Summary

Version 1.1.1 was released on 13 December 2019.

This release includes the following (notable) new features, improvements and bug fixes:

  • LCP 1.0 compliance, including library lending interactions (return/renew)
  • OPDS improvements: support for hybrid OPDS2 navigation/publications views, OAuth Authentication for OPDS (with seamless LCP acquisition via "borrow"), fixed search/previous/next-pagination links, metadata parser corrections, navigation links with "number of items"
  • User Interface fix: publications shown twice in local bookshelf (recently added vs. reading list)
  • Publication "info" modal dialog box: now with support for small/large cover image toggle, and eliminated the top-offset bug (blur effect was causing margin)
  • Download progress indicator for LCP and OPDS acquisitions
  • Publications now have checksum (CRC) calculations to prevent duplicate imports
  • Navigation between main window sections (local bookshelf, OPDS catalogs) preserves grid vs. list display setting, and preserves context (was total reset before)
  • Eliminated duplicate binaries / libraries from the built application package (LevelDown database)
  • AppX Windows Store file extensions associations now fixed in the Electron builder toolchain
  • Prototype integration of MathJax (to render MathML)
  • Upgrade to Electron 7 (Chromium 78, NodeJS 12)
  • Automated continuous integration builds via Travis and Appveyor, now with inspector/debugging tools enabled in EPUB webview
  • Unsupported JSON Schema properties for ReadiumWebPublicationManifest and OPDS2 are now preserved (custom data)
  • Developer experience improvements: significant TypeScript robustification / type safety (removal of "any" data structures, including in Redux Saga, actions, reducers, etc.), upgrade to TypeScript 3.7 (new syntactical constructs for more concise programming practices)

Full Change Log

https://github.com/readium/readium-desktop/blob/develop/changelogs/CHANGELOG-v1.1.0.md#full-change-log

thorium-reader - Thorium Reader v1.0.5

Published by danielweck about 5 years ago

Summary

Version 1.0.5 was released on 10 October 2019.

This release includes the following (notable) new features, improvements and bug fixes:

  • Screen reader compatibility: the webview that renders EPUB HTML documents is now hard-refreshed to ensure NVDA, etc. track DOM changes reliably
  • Keyboard interaction: SHIFT+CTRL+ALT LEFT/RIGHT-ARROW to quickly navigate previous/next spine items (works on Windows, including with NVDA, but minus ALT on MacOS for VoiceOver compatibility)
  • File extension .epub association (EPUB "open with" or double-click to launch from Windows File explorer, MacOS Finder, and Linux desktop managers)
  • Fixed interaction problems in publication import (mouse vs. keyboard bugs)
  • Fixed broken publication export
  • Added OPDS feed pagination, including search results
  • Publications imported from OPDS catalogs now have an initial list of (user-editable) tags extracted from the feed metadata
  • Corrected handling of OPDS relative URLs
  • Detection of internet connectivity, friendlier messages during OPDS navigation
  • Support for javascript: hyperlinks in EPUB HTML documents
  • Protection against broken hyperlinks in non-valid EPUBs (HTTP 404)
  • Improved feedback during publication download, error cases
  • Added dark and sepia colour themes in User Interface (was only in EPUB documents)
  • Fixed Command Line Interface on MacOS
  • Bookmarks labels now checked for empty string
  • Publication info dialog has a "see more" expand/collapse button for long descriptions (library and reader views)
  • Fixed crash when removing publication in scroll list
  • Miscellaneous User Interface improvements and bug fixes: publication list alignment, goto page, OPDS search breadcrumb, bookmark display (long label ellipsis, padding), reader view settings initial state
  • Significant under-the-hood code refactorings to improve the developer experience and the robustness of the codebase (TypeScript strict typing, error handling / border cases)

(previous v1.0.4 changelog)

Full Change Log

https://github.com/readium/readium-desktop/blob/develop/changelogs/CHANGELOG-v1.0.5.md#full-change-log

thorium-reader - Thorium Reader v1.0.4

Published by danielweck about 5 years ago

Summary

Version 1.0.4 was released on 06 September 2019.

This release includes the following (notable) new features, improvements and bug fixes:

  • Restored AppX Microsoft Windows App Store application name in package.json
  • User Interface improvements
    • OPDS breadcrumb navigation now top-sticky for long vertical scrolling gridlist
    • Publication tags editor / text input field now with add submit button
    • Skip failed EPUB instead of abort during mulitple publications import
    • Fixed OPDS catalog title overflow
  • Developer tweaks: changelog re-organization, tooling for auto-generation from Git commit history

(previous v1.0.3 changelog)

Full Change Log

https://github.com/readium/readium-desktop/blob/develop/changelogs/CHANGELOG-v1.0.4.md#full-change-log

thorium-reader - Thorium Reader v1.0.3

Published by danielweck about 5 years ago

Summary

Version 1.0.3 was released on 05 September 2019.

This release includes the following (notable) new features, improvements and bug fixes:

  • Tweaked user interface / user experience, based on testers' feedback
  • Better support for assistive technology, including the following screen readers:
    • Narrator, JAWS and NVDA on Microsoft Windows
    • Voice Over on MacOS
    • (not tested on Linux)
  • Facilitated keyboard-based interaction, shortcuts and visual outlining
  • Improved OPDS support (online catalogs / publication feeds), including search, and error messaging (asynchronous HTTP requests, concurrent downloads)
  • Cleaned-up language resources (at the moment: English, French, German), to facilitate contributions / UI translations
  • Added a Command Line Interface (CLI) to import multiple publications, "open with" or double-click from the file explorer (registered EPUB file extension)
  • Better performance and security, latest NPM package dependencies wherever possible
  • Improved developer experience:
    • Stricter TypeScript compiler rules (static type checking)
    • Chromium developer tools with integrated Electron debugger, React and Redux extensions, Axe accessibility checker, and "inspect here" popup menu helper
    • Debugger configuration for Visual Studio Code, Electron main and renderer processes
    • Locales management: scripts and workflow to maintain JSON language resources

Full Change Log

https://github.com/readium/readium-desktop/blob/develop/changelogs/CHANGELOG-v1.0.3.md#full-change-log

thorium-reader - v1.0.0-alpha.2

Published by clebeaupin over 6 years ago

Documentation

  • Add license header to all source files #105
  • Add changelog #106

Fixed issues

thorium-reader - v1.0.0-alpha.1

Published by clebeaupin over 6 years ago