Skip to content

[FEAT] Support reusable Week Templates ("Choose template") #160

Open

Description

@GiZano

Is your feature request related to a problem? Please describe.

Users often alternate between distinct seasonal or cyclical routines (e.g., "School/University Routine", "Exam Session Routine", "Summer/Vacation Routine"). The current "Copy Previous Week" feature only works if the immediately preceding week matches the desired routine, forcing users to recreate schedules from scratch when transitions happen.

Describe the solution you'd like

  1. Apply Template:
    • On an empty week in PlannerScreen.tsx, display a secondary button below "Copy previous week":
      • [Copy Previous Week]
      • — or —
      • [Choose Template] (with an icon)
    • Tapping "Choose Template" opens a sheet/modal listing saved week templates (e.g., "School Week", "Summer Week").
    • Selecting a template populates the week with the saved blocks and handles calendar sync.
  2. Save Current Week as Template:
    • Provide an option (e.g., in a menu or header action) to "Save Week as Template", allowing the user to provide a template name.
  3. Template Management:
    • Allow users to view and delete created week templates.

Describe alternatives you've considered

Allowing users to navigate back to any past week and copy that specific week, but remembering which past week had which schedule is confusing and hard to maintain.

Additional Context

  • Keeps data local-first (stored in AsyncStorage, e.g. @climbstack/week_templates).
  • Maintains ClimbStack's minimal, native UI philosophy.
  • Related files: src/screens/PlannerScreen.tsx, src/store/PlannerContext.tsx, src/types/index.ts.
  • AI Generation Disclosure: This issue description was generated by an AI agent (Gemini 3.1 Pro).

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 request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions