Skip to content

Latest commit

 

History

78 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Granthalay

Granthalay is a private, local-first EPUB library and reader built with SvelteKit and Svelte 5. Books are parsed and stored in the browser: there is no account, server-side library, or reading telemetry.

Granthalay app icon

Quick links: Try it · Reader Wiki · Architecture · Contributing

What it does

  • Imports .epub files and extracts metadata, cover, spine, and table of contents in the browser.
  • Keeps uploaded books and reading position in IndexedDB; preferences use local storage.
  • Saves device-local bookmarks and text highlights using repagination-safe semantic locations.
  • Provides a library-wide annotations view for returning to saved passages across books.
  • Provides list, compact-grid, and comfortable-grid library views.
  • Switches between column pagination and a fit-to-screen presentation for illustrated books.
  • Supports click/tap regions, swipes, arrow keys, and Space for page navigation.
  • Includes dark mode and an installable PWA shell.

Granthalay is under active development. EPUB rendering can vary between publishers. See Compatibility and limitations before filing an issue.

How privacy works

Imported books are processed entirely in the browser and are not uploaded by Granthalay. Browser storage is origin-specific: clearing site data, changing the deployment URL, or using a different browser/profile produces a different library. Settings can export and restore a passphrase-encrypted, versioned local library archive without uploading its contents. Keep the original EPUB files, backup archives, and passphrases private.

The roadmap adds an optional bookstore without changing the reader's static-PWA foundation. The PWA remains deployable to GitHub Pages; a separately hosted modular backend provides accounts, catalog, purchases, entitlements, and book delivery. Anonymous local reading remains independent of that backend.

Documentation

Use the engineering context when developing with people or AI agents, and the GitHub Wiki for reader guidance. Local setup, validation, and pull-request instructions live only in CONTRIBUTING.md.

Contributing and security

Read CONTRIBUTING.md before opening a pull request. Report vulnerabilities privately as described in SECURITY.md. Community participation is governed by the Code of Conduct.

License

Granthalay is licensed under the MIT License.

About

A privacy-first, local-first EPUB library and offline PWA with responsive reading, device-local bookmarks and highlights, built with SvelteKit.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages