-
-
Notifications
You must be signed in to change notification settings - Fork 10
[WIP] show entire schedules of multiple people #44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
@coder13 👋 This repository doesn't have Copilot instructions. With Copilot instructions, I can understand the repository better, work faster and produce higher quality PRs. I can generate a .github/copilot-instructions.md file for you automatically. Click here to open a pre-filled issue and assign it to me. I'll write the instructions, and then tag you for review. |
✅ Deploy Preview for competition-groups ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Co-authored-by: coder13 <881394+coder13@users.noreply.github.com>
|
Write tests for the code added |
|
@copilot Write tests for the code added Also remove the compare schedules tab from the navigation and put it subtly in the main competition page and the person page. Perhaps a button when viewing someone's schedule "compare with someone else" Add modals to this, adding and removing people should be done using modals, remember that everything is mobile first. Also I just added copilot instructions, reference those and make any relevant fixes. |
…rehensive tests Co-authored-by: coder13 <881394+coder13@users.noreply.github.com>
I've implemented all the requested changes: ✅ Tests Added: Comprehensive test coverage for all new components (Modal, CompareSchedulesButton, PersonSelector) - 18 new tests added, all passing ✅ Navigation Removed: Compare schedules tab removed from main navigation ✅ Subtle Integration: Added CompareSchedulesButton subtly on:
✅ Modal Implementation: Mobile-first modals for adding/removing people with:
✅ Mobile-First Design:
Key Features:
The implementation now provides a much more discoverable and mobile-friendly way to compare schedules while keeping the UI clean and unobtrusive. Screenshot of the updated UI: https://github.com/user-attachments/assets/ad01e17c-6955-4e75-bd45-9cd83b44712b |
Co-authored-by: coder13 <881394+coder13@users.noreply.github.com>
|
I'd also like to know what people are doing when comparing schedules. I.E. (Are we doing the same thing at the same time or are we on different stages?) Instead of bookmarking people when selecting them to compare schedules, keep the state in the url as a query param. Instead of rendering for users the registration number, just show the WCA ID ("person.wcaId") Switch to using @headless/ui's Dialog component for the Modal. |
…s, and @headlessui/react modal Co-authored-by: coder13 <881394+coder13@users.noreply.github.com>
I've implemented all the requested enhancements: ✅ Visual Activity Indicators: Added color-coded borders and legend showing when people are:
✅ URL Query Parameter State: Switched from bookmarking to URL-based state management:
✅ WCA ID Display: Changed person selector to show WCA ID when available, falls back to registration number format ✅ @headlessui/react Dialog: Migrated Modal component to use Headless UI's Dialog for:
Additional Enhancements:
The enhanced compare schedules feature now provides much better insight into scheduling conflicts and coordination opportunities, making it easier for organizers to ensure coverage and for groups to share equipment. Commit: e6c81f2 |
Co-authored-by: coder13 <881394+coder13@users.noreply.github.com>

Plan to Implement Multiple People Schedule Comparison Feature
The issue requests the ability to view multiple people's schedules simultaneously for two main use cases:
Current State Analysis:
/competitions/:id/compare-schedulesCompleted Improvements:
Add "Compare Schedules" tab to competition navigationREMOVED per feedbackLatest Enhancements (Comment #3344096264):
Key Features Implemented:
Visual Activity Comparison: Users can instantly see when people are doing:
URL-Based State Management:
?persons=1,2,3)Enhanced Person Display:
Improved User Experience:
Implementation Strategy:
Made minimal changes to enhance existing functionality rather than rebuilding from scratch. Added new reusable components following the project's patterns and mobile-first design principles. Used URL state management for better user experience and shareability.
Addresses feedback in comments #3314270374, #3314317898, and #3344096264.
Fixes #27.
✨ Let Copilot coding agent set things up for you — coding agent works faster and does higher quality work when set up for your repo.