Skip to content

Add Favorites/Bookmarks Feature #116

@DrunkOnJava

Description

@DrunkOnJava

⭐ Implement Favorites System

Current State

  • TODO comment in ItemsListViewModel indicates favorite flag missing
  • No favorite/bookmark functionality in Item model
  • Filter for favorites exists but non-functional

Required Implementation

  1. Data Model Updates

    • Add isFavorite: Bool to Item model
    • Update repository save/fetch to include favorite status
    • Add favorite toggle method
  2. UI Components

    • Star/heart icon on item rows
    • Quick toggle animation
    • Favorites filter in toolbar
    • Favorites badge count
  3. User Experience

    • Swipe action to favorite/unfavorite
    • Bulk selection for favorites
    • Sort by favorite status
    • Favorites dashboard widget

Code Changes

// Item model addition
var isFavorite: Bool = false

// Repository method
func toggleFavorite(_ item: Item) async throws

Acceptance Criteria

  • Users can mark items as favorites
  • Favorites persist between sessions
  • Filter by favorites works correctly
  • Smooth toggle animations

Parent Epic

Related to #106 (UI/UX Implementation Gaps)

Metadata

Metadata

Assignees

Labels

P2Medium priority - fix in next sprintenhancementNew feature or requestfeatureNew feature or enhancement

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions