Skip to content

Navigation redesign: Today, Upcoming, Profile #137

Closed

Description

@MessiasLima

Description

Redesign the app navigation to use a bottom navigation bar with three tabs: Today, Upcoming, and Profile. This replaces the current navigation structure and establishes the main app structure that all other screens build upon.

The bottom navigation bar should show the current tab with a highlighted state and allow switching between the three main sections. Navigation between tabs should preserve the scroll position and state of each tab.

The Today tab shows the Today screen (from #125). The Upcoming tab shows the Upcoming screen (from #135, #15). The Profile tab shows a placeholder Profile screen that will later contain the "Upgrade to Pro" banner (from #130), a Statistics option, app settings, and account information.

Navigation to secondary screens (Create Task, Task Detail, Edit Task) should push on top of the current tab's nav stack.

Scope

In scope: bottom navigation bar with three tabs (Today, Upcoming, Profile), tab switching with state preservation, Profile placeholder screen with Statistics option, navigation to secondary screens pushed on the current tab stack, and string resources.

Out of scope: Upcoming screen content (separate ticket #15), Profile screen content beyond a placeholder, "Upgrade to Pro" banner (separate ticket #130), statistics screens (separate tickets #25, #26).

Acceptance criteria

  • GIVEN the app is opened
    WHEN the main screen renders
    THEN a bottom navigation bar is shown with three tabs: Today, Upcoming, and Profile
  • GIVEN the bottom navigation bar is visible
    WHEN the current tab is active
    THEN it is visually highlighted compared to the other tabs
  • GIVEN the user taps a different tab
    WHEN the switch occurs
    THEN the corresponding screen is displayed and the tab is highlighted
  • GIVEN the user switches tabs
    WHEN returning to a previously visited tab
    THEN the scroll position and state of that tab are preserved
  • GIVEN the user is on any tab
    WHEN they navigate to a secondary screen (e.g., Create Task, Task Detail)
    THEN the secondary screen is pushed on top of the current tab's navigation stack
  • GIVEN the user presses back from a secondary screen
    WHEN the navigation occurs
    THEN they return to the tab they were on
  • GIVEN the user is on the Profile tab
    WHEN the screen renders
    THEN a placeholder Profile screen is shown with a Statistics option
  • GIVEN user-visible text appears in the navigation or placeholder screen
    WHEN the app renders them
    THEN all visible text comes from string resources

Activity

  1. added this to the next milestone on Jul 15, 2026
  2. MessiasLima commented on Jul 26, 2026

    @MessiasLima
    OwnerAuthor

    /oc Implement this task

  3. opencode-agent commented on Jul 26, 2026

    @opencode-agent
    Contributor

    Created PR #198

    New%20session%20-%202026-07-26T14%3A37%3A34.608Z
    opencode session  |  github run

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

    No labels
    No labels

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions