Skip to content

kruserr/hygg

Repository files navigation

hygg

Simplifying the way you read

Overview

The goal of this project is to build an ebook and document reader that has a minimal set of features, that make reading enjoyable on a desktop computer.

A large emphasis is on making a minimalistic and distraction free environment for you to easily focus on what is important, the content.

Furthermore we are working on building a seamless experience for reading ebooks but also more generally documents, both on a desktop computer and a tablet or e-reader with a browser.

Features

  • CLI client
    • Converts regular or scanned PDF or EPUB to plain text
    • Justifies the plain text to specified column width
    • Horizontally centers the text
    • Minimalistic less like interactive reader with vim like bindings (still work in progress)
    • Saves progress
    • Cross platform
    • Each component in the CLI client is exposed as a UNIX style utility for easy code reuse in your own open source project

Quick start guide

Install the CLI client

cargo install --locked hygg
hygg doc.pdf

for scanned document support

sudo apt install ocrmypdf tesseract-ocr-eng

then use the --ocr=true flag

hygg --ocr=true doc.pdf

For further install instructions read the Getting started page

Documentation

Visit the Documentation

Roadmap

  • Plain text format support
  • PDF format support
  • EPUB format support
  • Convert scanned documents and images to plain text with ocrmypdf
  • Auto saving progress
  • Integrated command line with vim like commands
  • Server to sync progress and books
  • Text highlighting with server sync
  • Start screen to show overview of books and progress
  • Full test suite
  • CI / CD pipelines
  • Minimal build feature flag, for only basic converters, no server integration and no ai
  • Image to ascii art converter
  • Natural sounding ai voice model for text to speech narration
  • Run all inference directly in rust
  • Offline PWA web client
  • Support more ebook and document formats