GithubHelp home page GithubHelp logo

babluboy / bookworm Goto Github PK

View Code? Open in Web Editor NEW
1.3K 37.0 102.0 86.37 MB

A simple ebook reader for Elementary OS

License: GNU General Public License v3.0

Vala 61.45% Shell 0.20% Python 36.98% Meson 0.59% JavaScript 0.54% CSS 0.25%
bookworm ebook-reader epub elementaryos

bookworm's People

Contributors

advocatux avatar alessiosacco avatar asereze avatar babluboy avatar boki24 avatar bugsysop avatar carmina16 avatar comradekingu avatar ffranchina avatar fitojb avatar ihorhordiichuk avatar jonatanwick avatar josprachi avatar kaiklede avatar maronghappy avatar micahilbery avatar milotype avatar mnussbaum avatar nathanbnm avatar nautilusx avatar pafri avatar riivx avatar ryonakano avatar santossi avatar shiraeeshi avatar sr093906 avatar sveinki avatar victorenator avatar weblate avatar xendez avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bookworm's Issues

Design Category View

Design a capability for users to categorise their books in bookworm and then filter by category...

Show Progress Bar while Adding Books

When multiple books are selected for addition to Bookworm, the app freezes untill all books are parsed and added to the library. A progress bar can be shown showing the progress of the books being added and the application should not freeze.

Add a List View to Bookworm

It will be difficult for scrolling through a large number of books in cover view mode. So the following needs to be done:

  1. Create a ListViewMode to list books by columns. Title and show other metadata like Author, Date Added to Library can be the columns. Sorting on each columns should be present. This can be like Noise ListView...
  2. Paginate the Cover Image view to limit the number of covers to around 20 and show the latest read / added books first. The pagination view can be like slingshot...

Color Profiles in Reading view

Pocket uses two type of Color Profile. "Inverted" and "Sepia". Implementation of this feature will be great for night time reading.

No notification when Book in Library is not available

After the previous update, the ebook reader is not working. It can't show any content.
Error code:

[_LOG_LEVEL_DEBUG 14:51:40.653114] utils.vala:346: Started file operation[READ_FILE], for path=false, filename=
[_LOG_LEVEL_WARN 14:51:40.665250] utils.vala:488: Failure in File Operation [operation=READ_FILE,path=false, filename=]: Failed to open file 'false': No such file or directory
[_LOG_LEVEL_DEBUG 14:51:40.665305] utils.vala:491: Completed file operation[READ_FILE]...
[_LOG_LEVEL_DEBUG 14:51:40.665361] ePubReader.vala:173: Completed extracting location of content files in ebook. Number of content files = 0
[_LOG_LEVEL_DEBUG 14:51:40.665393] ePubReader.vala:178: Starting to renderPage for direction[] on book located at /media/choyan/Sherlock/Books/f-BeastsFind/Fantastic Beasts and Where to Find T (21)/Fantastic Beasts and Where to F - J. K. Rowling.epub
[_LOG_LEVEL_DEBUG 14:51:40.665435] ePubReader.vala:199: Book has a CURRENT_LOCATION set at :13
[_LOG_LEVEL_WARN 14:51:40.665461] ePubReader.vala:221: No contents determined for the book at location [13], no rendering possible.

Method of Deleting books from Library

Currently, to Delete a book, we need to select a button, then the system will start selecting it. This behavior can be improved by the idea of how elementary is using it in its system. As this is a universal behavior across elementary, I think bookworm should have it too.

screenshot from 2017-02-27 13 17 41

Warnings about Debian control file

AppCenter Dashboard found some issues with your debian/control file. While we will continue
to try to build your project, we recommend you take a look and fix these
problems for next time.

  • Package is not valid reverse domain name scheme

Affects: v0.4.3 release

Failed to build with liftoff

Apphub failed to build with liftoff. Here is the log:

dpkg-checkbuilddeps: error: syntax error in debian/control at line 18: block lacks the 'Package' field
W: Unmet build-dependency in source
dpkg-buildpackage: warning: using a gain-root-command while being root
dpkg-buildpackage: source package com.github.babluboy.bookworm
dpkg-buildpackage: source version 0.5.2
dpkg-buildpackage: source distribution xenial
dpkg-buildpackage: source changed by babluboy <[email protected]>
 dpkg-source --before-build flightcheck
dpkg-source: error: syntax error in flightcheck/debian/control at line 18: block lacks the 'Package' field
dpkg-buildpackage: error: dpkg-source --before-build flightcheck gave error exit status 25

Affects: 0.5.2 release

Invalid Desktop file

AppCenter Dashboard ran desktop-file-validate on your project's .desktop file and received the following errors:

repository/data/com.github.babluboy.bookworm.desktop: error: value "0.4.3" for key "Version" in group "Desktop Entry" is not a known version
repository/data/com.github.babluboy.bookworm.desktop: hint: value "GTK;Office;Graphics;" for key "Categories" in group "Desktop Entry" contains more than one main category; application might appear more than once in the application menu


For more information, see the Desktop Entry Specification

Affects: v0.4.3 release

Focus problem on Buttons

Whenever I try to click on those 2 header buttons, they do not provide appropriate interaction. They should be rounded properly.
screenshot from 2017-02-25 18 17 28

Welcome screen on empty library

Have a quick and easy way to start reading when a user first opens their app :)

This can easily be done using Granite.Widgets.WelcomeScreen

screenshot from 2017-02-18 13 50 34

Update Cover Image immediately on Change

Currently the cover image updated by the context menu only takes effect on closing and re-opening Bookworm. Fix this by updating the Library View with the new image for the book as soon as the User selects a new image for the cover in the context menu

Multi File picker cant use keyboard keys

During uploading on Google Drive, I can select files using arrow keys and they look like this in the file chooser.
screenshot from 2017-02-27 12 53 33
Bookworm currently can't select by arrow key while importing books to the library. Besides, whenever I try to use the arrow key, the picker gets slow and also unable to use mouse at the moment.

Filter by tags

Add tag dropdown filter to allow user to choose multiple tags
show selected tags on footer as a visual indication of filter criteria
context menu tag design jpeg

Book Cover Image is stretched in Reader

Showing the correct image of the book cover - At the moment unless the ebook specifies a size for the image the image fills the whole content area and appears stretched. Handle this situation by specifying the size such that the image shows nicely

Lag While Closing

There is a lag while Bookworm is closing as the state of each book in the library is saved to database. This lag increases when the number of books in the library is more.

Fix the issue so that the window is closed quickly and the process for saving the state of the books is done in the background

Screenshot points to non-existent file

The screenshot in the AppData points to a file that doesn't exist anymore. Should update that :)

Also, you should use the raw subdomain as in https://raw.githubusercontent.com/babluboy/bookworm/master/screenshots/...

Remember last state

As per elementary Human Interface Guidelines, you should make your app remember the state it was left on. This includes:

  • Window size
  • Window state (fullscreen?)
  • Current book opened
  • Remember the page you're on, per book (You can make use of your database for this)

For the things not on the dabatase, you can use GSettings to save them :)

Failed to build with liftoff

Apphub failed to build with liftoff. Here is the log:

I: new cache content 'libmpx0_5.4.0-6ubuntu1~16.04.4_amd64.deb' added
I: new cache content 'libwww-perl_6.15-1_all.deb' added
I: new cache content 'libblkid1_2.27.1-6ubuntu3.2_amd64.deb' added
I: new cache content 'libdb5.3_5.3.28-11_amd64.deb' added
I: new cache content 'libatomic1_5.4.0-6ubuntu1~16.04.4_amd64.deb' added
I: new cache content 'libdevmapper1.02.1_2%3a1.02.110-1ubuntu10_amd64.deb' added
I: new cache content 'libudev1_229-4ubuntu16_amd64.deb' added
I: new cache content 'libc6-dev_2.23-0ubuntu3_amd64.deb' added
I: new cache content 'libusb-0.1-4_2%3a0.1.12-28_amd64.deb' added
I: new cache content 'libattr1_1%3a2.4.47-2_amd64.deb' added
I: new cache content 'libsystemd0_229-4ubuntu16_amd64.deb' added
I: new cache content 'libapt-inst2.0_1.2.20_amd64.deb' added
I: new cache content 'autoconf_2.69-9_all.deb' added
I: new cache content 'libmount1_2.27.1-6ubuntu3.2_amd64.deb' added
I: new cache content 'libnet-ssleay-perl_1.72-1build1_amd64.deb' added
I: new cache content 'apt-utils_1.2.20_amd64.deb' added
I: new cache content 'insserv_1.14.0-5ubuntu3_amd64.deb' added
I: new cache content 'libitm1_5.3.1-14ubuntu2_amd64.deb' added
I: new cache content 'libncurses5_6.0+20160213-1ubuntu1_amd64.deb' added
I: new cache content 'bzip2_1.0.6-8_amd64.deb' added
I: new cache content 'cpp-5_5.4.0-6ubuntu1~16.04.4_amd64.deb' added
I: new cache content 'initscripts_2.88dsf-59.3ubuntu2_amd64.deb' added
I: new cache content 'libfdisk1_2.27.1-6ubuntu3.2_amd64.deb' added
I: new cache content 'debianutils_4.7_amd64.deb' added
I: new cache content 'bsdutils_1%3a2.27.1-6ubuntu3_amd64.deb' added
I: new cache content 'libselinux1_2.4-3build2_amd64.deb' added
I: new cache content 'libc-dev-bin_2.23-0ubuntu7_amd64.deb' added
I: new cache content 'libpam-modules_1.1.8-3.2ubuntu2_amd64.deb' added
I: new cache content 'perl-modules-5.22_5.22.1-9_all.deb' added
I: new cache content 'libdpkg-perl_1.18.4ubuntu1_all.deb' added
I: new cache content 'util-linux_2.27.1-6ubuntu3_amd64.deb' added
I: new cache content 'eatmydata_105-3_all.deb' added
W: no hooks of type E found -- ignoring
I: unmounting dev/pts filesystem
I: unmounting run/shm filesystem
I: unmounting proc filesystem
I: creating base tarball [/var/cache/liftoff/xenial-amd64-base.tgz]
I: cleaning the build env 
I: removing directory /var/cache/liftoff/build//7 and its subdirectories
dpkg-checkbuilddeps: error: syntax error in debian/control at line 18: block lacks the 'Package' field
W: Unmet build-dependency in source
dpkg-buildpackage: warning: using a gain-root-command while being root
dpkg-buildpackage: source package com.github.babluboy.bookworm
dpkg-buildpackage: source version 0.5.1
dpkg-buildpackage: source distribution xenial
dpkg-buildpackage: source changed by babluboy <[email protected]>
 dpkg-source --before-build flightcheck
dpkg-source: error: syntax error in flightcheck/debian/control at line 18: block lacks the 'Package' field
dpkg-buildpackage: error: dpkg-source --before-build flightcheck gave error exit status 25

Affects: 0.5.1 release

Invalid Desktop file

AppCenter Dashboard ran desktop-file-validate on your project's .desktop file and received the following errors:

repository/data/com.github.babluboy.bookworm.desktop: error: value "0.4.3" for key "Version" in group "Desktop Entry" is not a known version


For more information, see the Desktop Entry Specification

Affects: 0.4.3 release

Add PDF support to Bookworm

Initial digging suggests uses of the poppler utility pdftohtml and then use the output HTML files on WebKit...

Invalid AppData file

AppCenter Dashboard ran appstreamcli validate on your project's .appdata.xml file and
received the following errors:

W - com.github.babluboy.bookworm.appdata.xml:com.github.babluboy.bookworm.desktop:11
    Found tag '_p' in 'description' section. Only 'p', 'ul' and 'ol' are allowed.

W - com.github.babluboy.bookworm.appdata.xml:com.github.babluboy.bookworm.desktop:9
    Found invalid tag: '_summary'. Non-standard tags must be prefixed with "x-".

W - com.github.babluboy.bookworm.appdata.xml:com.github.babluboy.bookworm.desktop:8
    Found invalid tag: '_name'. Non-standard tags must be prefixed with "x-".

E - com.github.babluboy.bookworm.appdata.xml:com.github.babluboy.bookworm.desktop
    The component is missing a long description. Components of this type must have a 
    long description.

W - com.github.babluboy.bookworm.appdata.xml:com.github.babluboy.bookworm.desktop:16
    Found tag '_p' in 'description' section. Only 'p', 'ul' and 'ol' are allowed.

Validation failed.


For more information, see:

Affects: 0.4.3 release

Add context menu to Books

Add a context menu for each book in the Library View to show:
1- Update Cover Image : Should open a window and allow user to choose a image
2- Update Book Title if the default cover is being used: Text Entry with current title populated
3- Add tags to a book : Text Entry with current tags populated
4- Add rating for the book : Usual 5 stars to choose from

File type specify on File picker dialog

As the application currently supports only the ePub format, I think it's better that the file picker to act like one. It will specifically show only ePub format files. Currently, there is an option available I can see in the dialog, to select only ePub files. But it is not working properly.

screenshot from 2017-02-26 16 59 52
screenshot from 2017-02-26 17 00 01

Warnings about Debian control file

AppCenter Dashboard found some issues with your debian/control file. While we will continue
to try to build your project, we recommend you take a look and fix these
problems for next time.

  • Package is not valid reverse domain name scheme

Affects: 0.4.4 release

Apply CSS to the WebView

You should inject some CSS to the webview so that the text looks flush with the rest of the app like on the mockup :)

Use the system's Webkit

Is there a reason you're specifically using ppa:webkit-team/ppa instead of the one that's included with the system? If not, you should consider using the default one instead :)

Warnings about Debian control file

AppCenter Dashboard found some issues with your debian/control file. While we will continue
to try to build your project, we recommend you take a look and fix these
problems for next time.

  • Package is not valid reverse domain name scheme

Affects: v0.4.2 release

Make List of Contents Descriptive

Currently the List of Contents are just URLs to the various sections of the eBook. These should be made more descriptive by providing the title of chapters for example. The Table Of Contents provided in the ePUB can be utilized for this purpose
resume button

After Deleting the books, the Library doesn't get refreshed.

After Deleting the books, the Library view should be refreshed. Currently, it's causing some problems. After removing 2 books from the Library, its showing blank spaces in the deleted books area. I've deleted 2 books from the Library from the bottom area.

screenshot from 2017-02-27 12 44 37

Missing preferences icon

Yeah, the icon is missing like you said ;)

But as per the rest of the elementary apps, you should add the About item to the .desktop's as a quick list item instead of adding it on the menu. You know, for consistency :)

Warnings about Debian control file

AppCenter Dashboard found some issues with your debian/control file. While we will continue
to try to build your project, we recommend you take a look and fix these
problems for next time.

  • Package is not valid reverse domain name scheme

Affects: 0.4.3 release

Book Contents Page

Having a side bar to show table of contents instead of a contents page so that the user can flip back easily to the page being read if he decides not to jump to a different page. And if the user does decide to jump to another page then the content side bar should disappear

Open with support

If you could open ebooks right from your file manager into the app it would be awesome!

Bonus points: If the book you opened was already added before, and you were on a certain page, open it on that page

Multiple file picker for import

It would be great, If we can import multiple files to the Library at once. Currently, we have to import books one by one.

Table of Content button on Homepage

I think Table of content button only should be available, whenever a user is reading a page. I would like to propose a design concept here from Photos app.
Just like the Photos app, Bookworm will show show a "Library" navigation button to navigate to Library view. And maybe sidebar of the app will show the table of contents, whenever a user clicks on the expand button below. Which can also be Hidden.
screenshot from 2017-02-25 19 15 46

Currently the cover image of any ebook is stretched to the full width. If it would be possible life "Easy Ebook Viewer" to specify the cover image and give it a certain width to be stretched. So that, the Cover Image would look much beautiful
screenshot from 2017-02-25 19 21 17

Invalid Desktop file

AppCenter Dashboard ran desktop-file-validate on your project's .desktop file and received the following errors:

repository/data/com.github.babluboy.bookworm.desktop: error: value "0.4" for key "Version" in group "Desktop Entry" is not a known version
repository/data/com.github.babluboy.bookworm.desktop: error: value "GTK;Office" for string list key "Categories" in group "Desktop Entry" does not have a semicolon (';') as trailing character
repository/data/com.github.babluboy.bookworm.desktop: error: file contains multiple keys named "Type" in group "Desktop Entry"


For more information, see the Desktop Entry Specification

Affects: v0.4.2 release

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.