Add sidebar #260

Merged
simon merged 10 commits from sidebar into main 2026-01-12 15:17:30 +01:00
Collaborator

Description of the implemented changes

The changes were:

  • Bugfixing
  • New Feature
  • Breaking Change
  • Refactoring

Fix #217

What has been changed?

  • Add sidebar
  • Move settings from profile dropdown menu to sidebar

Definition of Done

Code Quality

  • No new technical depths
  • Linting passed
  • Documentation is added were needed

Accessibility

  • New elements are properly defined with html-tags
  • Colour contrast follows WCAG criteria
  • Aria labels are added when needed
  • Everything is accessible by keyboard
  • Tab-Order is comprehensible
  • All interactive elements have a visible focus

Testing

  • Tests for new code are written
  • All tests pass
  • axe-core dev tools show no critical or major issues

Additional Notes

## Description of the implemented changes The changes were: - [ ] Bugfixing - [x] New Feature - [ ] Breaking Change - [ ] Refactoring Fix #217 ## What has been changed? - Add sidebar - Move settings from profile dropdown menu to sidebar ## Definition of Done ### Code Quality - [ ] No new technical depths - [ ] Linting passed - [ ] Documentation is added were needed ### Accessibility - [ ] New elements are properly defined with html-tags - [ ] Colour contrast follows WCAG criteria - [ ] Aria labels are added when needed - [ ] Everything is accessible by keyboard - [ ] Tab-Order is comprehensible - [ ] All interactive elements have a visible focus ### Testing - [ ] Tests for new code are written - [ ] All tests pass - [ ] axe-core dev tools show no critical or major issues ## Additional Notes <!--- Add any additional information for the reviewers here -->
rafael self-assigned this 2025-12-03 22:42:49 +01:00
rafael added 1 commit 2025-12-03 22:42:51 +01:00
Add simple sidebar
Some checks failed
continuous-integration/drone/push Build is failing
2f6d5ff818
carla added 1 commit 2025-12-08 12:29:44 +01:00
Merge branch 'main' into sidebar
Some checks reported errors
continuous-integration/drone/push Build encountered an error
bb6ea0085b
carla added 1 commit 2025-12-11 10:11:11 +01:00
feat: adds sidebar as overlay and moves navbar content there
Some checks failed
continuous-integration/drone/push Build is failing
b0097ab99d
simon added 1 commit 2025-12-18 16:38:28 +01:00
feat: implement standard-compliant sidebar with comprehensive tests
Some checks failed
continuous-integration/drone/push Build is failing
16ca4efc03
Implement a new sidebar component based on DaisyUI Drawer pattern without
custom CSS variants. The sidebar supports desktop (expanded/collapsed states)
and mobile (overlay drawer) with full accessibility compliance.

Sidebar Implementation:
- Refactor sidebar component with sidebar_header, menu_item, menu_group,
  sidebar_footer sub-components
- Add logo (mila.svg) with size-8 (32px) always visible
- Implement toggle button with icon swap (chevron-left/right) for desktop
- Add nested menu support with details/summary (expanded) and dropdown
  (collapsed) patterns
- Implement footer with language selector (expanded-only), theme toggle,
  and user menu with avatar
- Update layouts.ex to use drawer pattern with data-sidebar-expanded
  attribute for state management

CSS & JavaScript:
- Add CSS styles for sidebar state management via data-attribute selectors
- Implement SidebarState JavaScript hook for localStorage persistence
- Add smooth width transitions (w-64 ↔ w-16) for desktop collapsed state
- Add CSS classes for expanded-only, menu-label, and icon visibility

Documentation:
- Add sidebar-analysis-current-state.md: Analysis of current implementation
- Add sidebar-requirements-v2.md: Complete specification for new sidebar
- Add daisyui-drawer-pattern.md: DaisyUI pattern documentation
- Add umsetzung-sidebar.md: Step-by-step implementation guide

Testing:
- Add comprehensive component tests for all sidebar sub-components
- Add integration tests for sidebar state management and mobile drawer
- Extend accessibility tests (ARIA labels, roles, keyboard navigation)
- Add regression tests for duplicate IDs, hover effects, and tooltips
- Ensure full test coverage per specification requirements
simon added 1 commit 2026-01-06 10:29:52 +01:00
feat: improve sidebar handling
Some checks failed
continuous-integration/drone/push Build is failing
aba8737c38
simon added 1 commit 2026-01-06 10:53:24 +01:00
Merge remote-tracking branch 'origin/main' into sidebar
Some checks failed
continuous-integration/drone/push Build is failing
ff625c91c5
simon added 1 commit 2026-01-06 11:08:45 +01:00
style: fix linting issues
Some checks failed
continuous-integration/drone/push Build is failing
935ef52c10
simon was assigned by carla 2026-01-07 09:48:44 +01:00
rafael was unassigned by carla 2026-01-07 09:48:45 +01:00
Owner

Looks really good to me! But one thing that for me is a must-fix is keyboard accessibility. Right now only Contribution types is accessible via keyboard.':/

Looks really good to me! But one thing that for me is a must-fix is keyboard accessibility. Right now only Contribution types is accessible via keyboard.':/
simon added 2 commits 2026-01-12 14:16:20 +01:00
simon added 1 commit 2026-01-12 15:16:42 +01:00
fix: fix tests and remove navbar remainings
Some checks failed
continuous-integration/drone/push Build is failing
8a1b14fc79
simon changed title from WIP: Add sidebar to Add sidebar 2026-01-12 15:17:15 +01:00
simon merged commit a1b0f65233 into main 2026-01-12 15:17:30 +01:00
moritz deleted branch sidebar 2026-01-13 10:03:01 +01:00
Sign in to join this conversation.
No description provided.