Skip to content

[Feature Request] Sort "Read Books" view by date finished reading #1465

Description

@castorfou

Is your feature request related to a problem? Please describe.
The "Read Books" browse view currently only offers the same generic sort options available everywhere else in the app: Date Added (book date), Publication Date, Title, and Author (ascending/descending). There's no way to sort read books by when they were actually finished, which is the most natural way to browse a reading history/log.

Describe the solution you'd like
Add a sort option to the "Read Books" view (and ideally the underlying book_read_link logic generally) based on the date the book's read status was last set to "read". Looking at the schema, book_read_link already has a last_modified column that gets updated whenever read_status changes — this seems like it could back a "Sort by date finished, newest/oldest first" option without needing new database fields.

Describe alternatives you've considered

  • Manually adding a custom Calibre column (e.g. via a KOReader sync plugin) to track a finished date, then sorting via the "Books List" table view. This works, but it's a workaround: it requires an external plugin, isn't native to CWA, and doesn't integrate with the "Read Books" view or its filtering.
  • I also don't have a clean way to distinguish "date added" from "date I actually finished it" in the main list, which matters when building a reading log/history rather than just browsing a library.

Additional context
This would be especially useful in combination with the recently added native KOReader sync feature — if CWA is already tracking when a book crosses 100% progress, using that same event to drive this sort would make the "Read Books" view function as a proper reading history/log, similar to a "recently finished" feed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions