munch-ease-frontend/frontend-spec.md
2025-11-02 21:38:31 +11:00

1.8 KiB

Frontend Specification: Final Polish

1. Current State & Objective

The multi-tenancy migration is functionally complete and successful. The frontend has been refactored to a robust, household-scoped application using JWT-based authentication. All legacy .js tests have been removed, and the codebase is clean.

The objective is to complete the final remaining UI feature to officially close out the project.

2. Final Tasks

This checklist represents all remaining work.

  • 1. Implement "Copy Invite Link" UI:

    • Objective: Implement the user interface for inviting new members to a household using a "copy link" feature.
    • File: src/views/HouseholdMembers.vue
    • Action:
      1. The backend team will provide a new endpoint that, when called, returns a JSON object with an invite_link.
      2. Update the "Invite" button logic to call this new endpoint.
      3. On a successful response, use the browser's Clipboard API (navigator.clipboard.writeText(response.invite_link)) to copy the link.
      4. Display a confirmation toast to the user (e.g., "Invite link copied to clipboard!").
    • Blocked By: Backend API change.
  • 2. Final Codebase Sweep:

    • Objective: Perform a final search for and remove any dead code, comments, or variables related to the old system.
    • Action: Search the entire codebase for the following keywords: legacy, old, previous, workaround, fallback, person.
    • Outcome: Any remaining artifacts from the migration are pruned, leaving the codebase in a clean, maintainable state for future development.
  • 3. Mark Project as Complete:

    • Objective: Once the above tasks are done, this document is complete.
    • Action: Check this box and archive this specification.