Skip to content

Implement time-based filters #24

Description

@RossCabrera

Overview

Add time-based filtering to show notes created/updated within Today,
Last 7 Days (Week), or Last 30 Days (Month) without page refresh.

Requirements

  • Create filter buttons: Today, Week, Month, All
  • Filter notes client-side based on timestamps
  • Show active filter state
  • Update notes list instantly
  • Work in combination with category filters

Implementation

  • Calculate date ranges (Today = 24hrs ago, Week = 7 days, etc.)
  • Filter useNotes() data client-side
  • Combine with category filter
  • No additional API calls needed

UI

  • Tab-style buttons or dropdown
  • Show active filter
  • Display count of filtered notes
  • Reset to All option

Acceptance Criteria

  • Today filter shows last 24 hours (AC-NAV-01)
  • Week filter shows last 7 days (AC-NAV-01)
  • Month filter shows last 30 days (AC-NAV-01)
  • Filters use updated_at timestamp (AC-NAV-01)
  • UI updates instantly (AC-NAV-02)
  • Works with category filter
  • Active filter highlighted
  • Works on all devices

Related User Stories

  • US-NAV-07: Time-based filtering

Related Acceptance Criteria

  • AC-NAV-01: Filters use created_at/updated_at
  • AC-NAV-02: UI updates instantly

Related Issues

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

featureA new functionality or capability added to the system.frontendUser interface, client-side logic, components, styling, and user interactions.

Projects

Relationships

None yet

Development

No branches or pull requests

Issue actions