Skip to content

Read any text in txt, epub, pdf or mobi format in an customizable and simple to use ereader. Written in Python with Tkinter and Go

License

Notifications You must be signed in to change notification settings

pat955/poki-books

Repository files navigation

PokiBooks code coverage badge

This is PokiBooks, a simple and clean eReader. Read books from txt, pdf, mobi or epub files, keep notes for each book, as well as customize layout, appearance and font size.

Why?

Originally, this started as a simple "count words in a text file" task, however i kept building on it until it became something i actually use! The main reason i continued working on this project is because I love reading, but I didn't have an eReader I really liked.

Download

You will most likely get a security warning, code signing and certificates are very expensive for windows and mac. It would cost me $150 - $450 each year to fix this. That is simply far too much to spend on a free open source project. Hope that is understandable

| Note: The current code is newer but there are issues with the actual releases which i am currently trying to fix. A few are missing because of pyinstaller not found error concerning a local module used for databases Download latest release: github.com/pat955/poki_books/releases/latest

Remember to choose the one based on your operating system!

Test it out with any book from Project Gutenberg. Project Gutenberg is an archive of books available in the public domain free of charge. I recommend reading Frankenstein! Current supported formats are: .txt, .pdf, .epub, .mobi and .html

Alternatively, if you want to run the app through terminal, follow the steps in the Contributing section

Features

  • Upload and read any .txt, pdf, mobi or epub file with ease!
  • Current supported formats include .txt, .epub, .mobi, .pdf and .html(still improving html)
  • Saves your scrollbar position for each book so you avoid scrolling forever each time
  • Take notes for each book
  • Customize appearance with themes, font size, justification and padding
  • Toggle fullscreen and sizebar

Contributing

Python version: 3.10.12

Clone project

git clone https://github.com/pat955/poki_books

Download dependencies

Install pip and python if you haven't already

pip install -r ./requirements.txt

Run Script

./scripts/run.sh

or alternatively

python ./src/poki_books.py

Run the tests

python -m unittest discover -s ./tests/ -p 'test_*.py'

Submit a pull request

If you'd like to contribute, please fork the repository and open a pull request to the main branch.

Roadmap

  • Keybinds, back to top button
  • Add contact info and how to use section
  • Pictures, maybe api gets book covers, goodreads API?
  • Search, bookmarking, highlighting
  • Page numbers for pdf or when available.
  • Recognize chapters?

  • Switch to sql db
  • ePub, pdf & mobi support
  • Simple logo & better name
  • Linux, windows & macOs release
  • Themes with fonts and font sizes & more themes
  • Clean up code, add documentation, better structure, fix bugs

About

Read any text in txt, epub, pdf or mobi format in an customizable and simple to use ereader. Written in Python with Tkinter and Go

Resources

License

Stars

Watchers

Forks