Skip to content

feat(app): add sidebar sub-project grouping#16934

Draft
anduimagui wants to merge 6 commits intoanomalyco:devfrom
anduimagui:feat/desktop-copy-command
Draft

feat(app): add sidebar sub-project grouping#16934
anduimagui wants to merge 6 commits intoanomalyco:devfrom
anduimagui:feat/desktop-copy-command

Conversation

@anduimagui
Copy link

Supersedes #16229 (branch renamed).

Issue for this PR

Closes #

Type of change

  • Bug fix
  • New feature
  • Refactor / code improvement
  • Documentation

What does this PR do?

This adds sub-project grouping in the sidebar so projects can be organized under a parent project and managed from the project context menu.

Key changes:

  • Added "Add sub-project" and "Remove from sub-project group" actions in the sidebar project menu.
  • Added parent/child project state management and grouped rendering behavior in layout state.
  • Ensured navigation expands the relevant parent group when entering a sub-project.
  • Added helper utilities and tests for project grouping behavior and stable group IDs/labels.
  • Added picker defaultPath support so sub-project selection starts from the parent project path (including WSL path handling).
  • Added i18n strings and a small sidebar sub-project entry animation.

How did you verify your code works?

  • Added/updated unit tests in packages/app/src/pages/layout/helpers.test.ts for:
    • stable group id generation
    • group label formatting
    • all-project and parent-group creation
    • sub-project grouping under selected core project
  • Manually reviewed integration points in:
    • packages/app/src/pages/layout.tsx
    • packages/app/src/pages/layout/sidebar-project.tsx
    • packages/app/src/pages/layout/sidebar-shell.tsx
    • packages/desktop/src/index.tsx

Screenshots / recordings

UI change: please attach before merge.

  • Sidebar context menu showing "Add sub-project" / "Remove from sub-project group"
  • Sidebar with expanded parent project and visible sub-projects

Checklist

  • I have tested my changes locally
  • I have not included unrelated changes in this PR

If you do not follow this template your PR will be automatically rejected.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant