Skip to main content

โœจ Magic Shelves

Magic Shelves are dynamic, rule-based collections based on book metadata fields that automatically organize your books based on filters you define, like "Unread Sci-Fi Books from the 1980s" or "Books Rated 4+ Stars and Finished Last Month."

โœจ Magic Shelves = Dynamic Smart Playlists for Your Books!

They eliminate the need for manual categorization and keep your collections up to date as your library grows and changes.

Whenever you add a new book, edit existing metadata, or change your reading status, Magic Shelves automatically update to reflect these changes, ensuring your collections are always current.


๐Ÿ› ๏ธ How Magic Shelves Workโ€‹

  • ๐Ÿงฎ Rule-Based Filtering: Define filters using metadata fields like title, author, categories, read status, ratings, and more.
  • ๐Ÿ”„ Real-Time Updates: As books are added, edited, or metadata changes, Magic Shelves update automatically.
  • ๐Ÿง  Nested Logic: Combine multiple conditions using AND/OR groups for flexible, complex filtering.
  • ๐Ÿ“š Always Fresh: No need to manually move books in or out; Magic Shelves stay current based on your rules.

๐Ÿš€ Step 1: Open the Magic Shelf Interfaceโ€‹

Magic Shelf Open

Navigate to the Shelves section of the sidebar and click New Magic Shelf. This will open the Magic Shelf creation interface.


โœ๏ธ Step 2: Create Your Magic Shelfโ€‹

Magic Shelf Create

Follow these steps to create your own Magic Shelf:

  1. Name Your Shelf
    Give your shelf a descriptive name (e.g., "Rom-Zom-Com" for Romantic Zombie Comedy).

  2. Select an Icon
    Choose an icon to visually represent your shelf.

  3. Define Rules or Groups

    • Click Add a new rule to start defining filtering conditions.
    • Click Add a new group to combine multiple rules with AND/OR logic for more complex filtering.
  4. Delete Rules or Groups
    Remove any rule or group by clicking the trash icon next to it.

  5. Save Your Shelf
    Click Save Shelf to finalize and create your Magic Shelf.


๐Ÿ’ก Tip: Magic Shelves work entirely based on your book's metadata. The more complete your data, the smarter your shelves!

๐Ÿ“ Detailed Instructions for Creating Rulesโ€‹


๐Ÿงฉ Rule Anatomyโ€‹

Each rule consists of three main components:

  • Field
    The book metadata field to evaluate.
    Example: "Title", "Author", "Rating", "Library", etc.
    E.g.: Field = Title

  • Operator
    How the metadata field is evaluated.
    Example operators: "equals", "greater than", "contains", etc.
    E.g.: Operator = contains

  • Value(s)
    The value(s) to compare against.
    Example: a word, a number, or a list of categories.
    E.g.: Value = "dragon"

Sample Rule:
Title contains "dragon"

You can combine multiple rules into a group, joined by either AND (all must match) or OR (any can match). Groups can also be nested to form complex logic trees.


๐Ÿ› ๏ธ Available Fieldsโ€‹

Here are some of the metadata fields you can filter on:

FieldDescription
LibraryThe library the book belongs to
TitleThe bookโ€™s title
SubtitleThe bookโ€™s subtitle
AuthorsAuthor(s) of the book
PublisherPublisher of the book
CategoriesGenre or tags
Read StatusWhether the book is unread, reading, etc.
Published DateDate the book was published
Series InfoName, number, and total books in series
Page CountTotal pages in the book
LanguageBookโ€™s language
RatingsRatings from Amazon, Goodreads, etc.
ReviewsReviews from Amazon, Goodreads, etc.
File TypeEPUB, PDF, etc.
File SizeFile size in KB
Personal RatingYour own rating for the book
Metadata ScoreBookloreโ€™s match score during import
Last ReadWhen you last opened/read the book

โš™๏ธ Operator Typesโ€‹

Below is a table describing what each operator does:

OperatorDescription
equalsMatches books where the metadata field exactly equals the specified value.
not_equalsMatches books where the metadata field does not equal the specified value.
containsMatches books where the metadata field contains the given substring.
does_not_containMatches books where the metadata field does not contain the given substring.
starts_withMatches books where the metadata field starts with the specified value.
ends_withMatches books where the metadata field ends with the specified value.
is_emptyMatches books where the metadata field is empty, null, or not set.
is_not_emptyMatches books where the metadata field is not empty.
includes_anyMatches if at least one of the values is present in the book's metadata field.
includes_allMatches only if all the specified values are present in the book's metadata field.
excludes_allMatches if none of the specified values are present in the book's metadata field.
greater_thanMatches if the metadata field is greater than the specified value.
greater_than_equal_toMatches if the metadata field is greater than or equal to the specified value.
less_thanMatches if the metadata field is less than the specified value.
less_than_equal_toMatches if the metadata field is less than or equal to the specified value.
in_betweenMatches if the metadata field is between two values (inclusive or exclusive based on UI).

Examples:

  • "Read Status equals Reading"
  • "Title contains dragon"
  • "Amazon Rating greater than 4"
  • "Categories includes_all ['Fantasy', 'Adventure']"

๐ŸŽจ Example Magic Shelvesโ€‹

  • Romantic Horror
    (Blends romance and horror genres to surface spooky love stories.)
    Dive into tales where love meets terror, perfect for fans of chilling romances and supernatural thrills.

    Image

  • Missing Metadata
    (Shows books with incomplete or missing metadata for easy cleanup.)
    Quickly find books lacking key info like title, author, or categories so you can tidy up your libraryโ€™s data.

    Image

  • Gods & Legends
    (Surfaces mythology, folklore, and legendary tales.)
    Explore epic stories of gods, heroes, and ancient myths from cultures around the world.

    Image

  • Fast & Furious
    (Short, fast-paced books with high ratings.)
    Find thrilling, page-turning reads that are highly rated and perfect for when you want an adrenaline rush in a hurry.

    Image

  • Couldn't Finish
    (Books you started but didnโ€™t finish.)
    Keep track of books you abandoned mid-read, a reminder of whatโ€™s still on your reading list or what to reconsider.

    Image