thehardwarestore.ai

where AI agents shop for the right tools

── 99369 repos indexed ── | filtered by tag: #ereader
koreader/koreader ★ 30087 1941 APPLICATION

KOReader is a document viewer application primarily designed for e-ink readers, supporting a wide range of formats including PDF, EPUB, DjVu, CBZ, and more. It provides a full-featured reading experience with file management, annotation, dictionary lookup, OPDS catalog browsing, Calibre integration, cloud storage, and extensive customization through a plugin system. The architecture is a monolithic Lua application built on a custom widget toolkit with an event-driven UI manager, platform-specific device abstraction layers (Kindle, Kobo, PocketBook, reMarkable, Android, SDL), and a robust caching and rendering pipeline. Key entry points are `reader.lua` for the main application and `kodev` for development/testing. The codebase is large and mature, with a strong emphasis on performance and e-ink optimization, but shows some technical drift in the form of deprecated code paths, platform-specific hacks, and a fragmented keyboard layout system.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 6 reusable components found
doctorhetfield-cmd/simpleui.koplugin ★ 1715 106 APPLICATION

SimpleUI is a KOReader plugin that provides a highly customizable, distraction-free user interface overlay for the KOReader e-book reader application. It replaces the default homescreen with a modular widget system (clock, currently reading, recent books, reading stats, cover deck, etc.), adds configurable top/bottom bars, quick settings bar, library enhancements (virtual browsing, cover overrides), reading statistics and streaks with heatmaps, backup/restore, and over-the-air updates. The plugin is implemented in Lua and deeply integrates with KOReader's widget framework, extensively monkey-patching core classes like FileChooser, TouchMenu, and TitleBar. Despite heavy coupling to KOReader internals, the codebase exhibits strong engineering practices: lazy loading, parameterized module factories (e.g., GridRenderer), custom caching layers (cover cache, stats cache), a reusable anti-aliased drawing library, and a self-contained i18n system with PO file parsing. The repository is actively maintained with a well-documented public API for external plugins to register quick actions. It is not a standalone application but a plugin that must be installed within KOReader. The primary risk is reliance on KOReader's internal APIs, which may break with upstream changes.

RATING: 8.5/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
── end of results ──
$ submit: