Functional requirements¶
1. User management¶
User can create an account using an email address and password. Acceptance criteria:
|
User can log in to the system using email and password. Acceptance criteria:
|
User can log in using their Google account via OAuth 2.0. Acceptance criteria:
|
User can use the application in offline mode without credentials or internet connection. Acceptance criteria:
|
User can reset their password via email recovery link. Acceptance criteria:
|
User can permanently delete their account and all associated data. Acceptance criteria:
|
2. Book management¶
User can convert e-book files between supported formats (EPUB, PDF, MOBI). Acceptance criteria:
|
User can manually edit book metadata (title, author, description, etc.). Acceptance criteria:
|
User can add and remove custom metadata fields to books. Acceptance criteria:
|
User can export selected book files from the system. Acceptance criteria:
|
User can export library data in structured, human-readable formats. Acceptance criteria:
|
User can import books from files, URLs, or cloud storage. Acceptance criteria:
|
System provides full-text search within book contents. Acceptance criteria:
|
System supports searching by metadata, tags, categories, and content. Acceptance criteria:
|
User can create shelves to group books into collections. Acceptance criteria:
|
User can assign colored tags to books for organization and filtering. Acceptance criteria:
|
User can create complex filters using a query language. Acceptance criteria:
|
User can scan ISBN barcodes to add physical books with fetched metadata. Acceptance criteria:
|
System can automatically fetch metadata from online sources. Acceptance criteria:
|
User can add and track physical books in their library. Acceptance criteria:
|
3. Integrated viewer¶
User can read e-books using the integrated viewer. Acceptance criteria:
|
User can customize the viewer appearance and behavior. Acceptance criteria:
|
User can create and manage named reading profiles. Acceptance criteria:
|
User can create and manage bookmarks within books. Acceptance criteria:
|
4. Annotations and notes¶
User can highlight text while reading with optional notes. Acceptance criteria:
|
User can create free-form notes associated with books. Acceptance criteria:
|
User can edit and delete existing annotations and notes. Acceptance criteria:
|
User can export annotations and notes to external formats. Acceptance criteria:
|
User can search through all annotations and notes. Acceptance criteria:
|
5. Progress tracking¶
User can view comprehensive reading progress and statistics. Acceptance criteria:
|
User can filter statistics by time frame and book selection. Acceptance criteria:
|
System synchronizes reading progress, metadata, and annotations across all logged-in devices via the metadata server. Acceptance criteria:
See Server architecture for sync details. |
6. Goal management¶
User can create time-based reading goals. Acceptance criteria:
|
User can manually update goal progress values. Acceptance criteria:
|
System automatically updates goal progress based on reading activity. Acceptance criteria:
|
System sends notifications about goal progress and reminders. Acceptance criteria:
|
7. Storage and synchronization¶
User can choose where book files are stored from application settings. Acceptance criteria:
See Server architecture for details. |
User can configure connection to a metadata server for cross-device synchronization. Acceptance criteria:
|
User can upload book files from their device. Acceptance criteria:
|
System can apply OCR to scanned documents for text extraction. Acceptance criteria:
|
System supports optional plugins for extended functionality. Acceptance criteria:
|
User can browse and download books from OPDS catalogs. Acceptance criteria:
|