Skip to content

Redesign library selection as a complete bulk actions workflow #119

Description

@niklhut

Problem

The pre-beta selection mode was removed because it exposed only bulk deletion and did not match the broader physical-library workflow. The beta follow-up notes call for a polished replacement, but that follow-up does not yet have a dedicated issue.

Scope

  • Design a selection model that works with search, filters, sorting, pagination, and responsive layouts.
  • Support an initial useful action set:
    • Move selected books to a location or clear their location.
    • Add or remove tags.
    • Delete selected books with clear destructive confirmation.
    • Export selected books where this fits the library-transfer model.
  • Decide whether selection persists across pages and filter changes, and communicate that behavior clearly.
  • Show selected counts, partial failures, progress, and completion summaries.
  • Make bulk operations user-scoped and transactional where practical.
  • Reuse, extend, or intentionally replace the dormant batch-delete endpoint.
  • Follow the route/service/repository architecture for every server mutation.
  • Ensure the workflow is usable by keyboard and on mobile.

Acceptance criteria

  • Users can enter and exit selection mode without losing normal library navigation unexpectedly.
  • Users can select books across the supported pagination/filter model with clear selection counts.
  • Users can bulk move books and clear locations.
  • Users can bulk add and remove tags.
  • Users can bulk delete only after explicit confirmation.
  • Selected-book export is supported or explicitly deferred with a documented reason.
  • Partial failures are reported without falsely claiming that every item succeeded.
  • All operations are scoped to the authenticated user's library.
  • The workflow is keyboard-accessible and usable on supported mobile layouts.
  • Tests cover selection state and service/API behavior for each shipped action.
  • pnpm lint:fix, pnpm typecheck, and pnpm test:unit pass.

Notes

Do not reintroduce deletion-only selection. The value is a coherent collection-management workflow.

No activity

Activity on this issue will appear here.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestlibraryLibrary inventory, books, metadata, import/export, or searchpriority: mediumMedium priority / important for 1.0 readinessroadmapRoadmap item imported from sprint planninguxUser experience, interaction, or visual refinement

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions