Skip to content

Refactor: Add Settings page and move Account menu flows #380

@AnthonyRonning

Description

@AnthonyRonning

Summary

The current sidebar Account dropdown has grown to include many unrelated flows (Profile, Upgrade, Manage Subscription, API Management, Delete History, Team Management, About/Privacy/Terms, Logout, etc.). We should replace this with a dedicated Settings screen.

What to build

  • Add a new authenticated Settings page/screen that renders in the main app area (replacing UnifiedChat when navigated to).
  • Organize settings into clear categories/sections (e.g. Account, Billing, Team, API, Data/History, About).
  • Move the existing Account dropdown menu items/flows into the Settings screen (reusing existing components/logic as much as possible).
  • Replace the sidebar Account dropdown with a simple navigation entrypoint to the Settings screen.

Critical requirements (keep existing flows working)

  • Preserve and/or redirect existing deep links / flow entrypoints that currently target “settings-like” functionality:
    • Team setup auto-routing (currently driven by query params like team_setup=true).
    • API credits success flow (currently driven by credits_success=true, including balance refresh + success messaging).
  • Be careful with team management routing/params; make sure all team flows still land in the right place after the refactor.
  • Keep platform-specific behavior (web/desktop vs Tauri mobile/desktop) for things like opening external URLs and the billing portal.

Acceptance criteria

  • Users can access all prior Account dropdown actions from the new Settings screen.
  • Existing redirects (pricing/payment success, credits success, etc.) still land the user in the correct Settings section.
  • Sidebar no longer uses the Account dropdown popup for these actions.
  • No regressions in login gating and routing.

Notes

Implementation likely touches frontend/src/components/AccountMenu.tsx, frontend/src/components/Sidebar.tsx, frontend/src/routes/index.tsx, and adds new Settings route(s) under the authenticated router.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions