Skip to content

feat: redesign schedule component with expandable events and detailed… #37

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

jhermesn
Copy link
Contributor

@jhermesn jhermesn commented Jul 4, 2025

This pull request refactors the Schedule component in src/components/Schedule.tsx to introduce a more structured and interactive schedule display. Key changes include a new data structure for events, improved UI components, and added functionality for expandable event details.

Data Structure Enhancements:

  • Introduced new types/interfaces (EventType, Talk, EventContent, ScheduleEvent, ScheduleDay, ScheduleData) to provide a more detailed and structured representation of schedule data. This includes support for event-specific details like speakers, rooms, and registration links.

UI Improvements:

  • Updated the design of event cards, including the use of Image components for speaker images, better styling for event types, and interactive buttons for registration links.
  • Redesigned the day selection buttons with a cleaner and more responsive appearance.

New Features:

  • Added the ability to expand and collapse event details, with visual indicators (ChevronDown and ChevronUp icons) and support for nested content like talks and activities.
  • Implemented helper functions like toggleExpand and getEventTypeColor to manage state and styling dynamically.

Code Cleanup:

  • Removed the old ScheduleItem structure and its related

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