Based on the verification of all 2025 components mentioned, here's the complete status:
-
Schedule (
/2025/schedule)- Status: ✅ Correctly imports
@data/2025.json - Location:
src/views/Schedule/Schedule.tsx(line 7) - No action needed
- Status: ✅ Correctly imports
-
Talks (
/2025/talks)- Status: ✅ Correctly imports
@data/2025.jsonas default - Location:
src/views/Talks/Talks.tsx(line 6) - Behavior: Uses
conferenceConfigprop withconferenceData(2025) as default - API: Calls
useFetchTalks(conferenceConfig.edition)with correct year - No action needed
- Status: ✅ Correctly imports
-
Workshops (
/2025/workshops)- Status: ✅ Correctly imports
@data/2025.json - Location:
src/views/Workshops/Workshops.tsx(line 5) - Note: 2026 will not have workshops (as per requirements)
- No action needed
- Status: ✅ Correctly imports
-
Job Offers (
/2025/jobOffers)- Status: ✅ Uses static
jobOffersdata fromJobsData - Location:
src/components/JobOffers/JobOffersList.tsx(line 5) - Note: Not year-specific, uses static sponsor job data
- No action needed
- Status: ✅ Uses static
- Diversity (
/2025/diversity)- Status:
⚠️ Hardcodes@data/2026.json - Location:
src/views/Diversity/Diversity.tsx(line 3) - Issue: Uses
data.editiondirectly (lines 95, 121) instead of accepting a prop - Current behavior: Shows "2026" in text
- Required action: Create
DiversityWrapper2025to pass 2025 data - Note: Both 2025 and 2026 have
diversity: false(application form disabled)
- Status:
Diversity Component: Create a wrapper for 2025 to ensure correct year is displayed.
// src/2025/Diversity/DiversityWrapper2025.tsx
import React, { FC } from "react";
import { Diversity } from "@views/Diversity/Diversity";
import data2025 from "@data/2025.json";
export const DiversityWrapper2025: FC = () => {
return <Diversity conferenceConfig={data2025} />;
};Note: The Diversity component needs to be refactored to accept a conferenceConfig prop instead of hardcoding the import.
-
2026 Components: As mentioned, the following are not ready yet:
- Diversity 2026: Incomplete/duplicate data is acceptable
- Schedule 2026: Not ready
- Talks 2026: Will be empty (API returns no records)
- Workshops 2026: Will not have workshops
- Job Offers 2026: Not ready (no sponsors yet)
-
Pattern Consistency: Consider refactoring all base components to accept
conferenceConfigprops to avoid future issues when preparing new editions.
| Component | 2025 Status | 2026 Status | Needs Wrapper |
|---|---|---|---|
| Schedule | ✅ Set | ❌ Not ready | No |
| Talks | ✅ Set | ❌ Empty (API) | No |
| Workshops | ✅ Set | ❌ No workshops | No |
| Job Offers | ✅ Set | ❌ No sponsors | No |
| Diversity | ✅ Set | ❌ Not ready | Yes (2025) |
| Speakers | ✅ Set (fixed) | ✅ Ready | Yes (2025) |
| CFP | ✅ Set (fixed) | ✅ Ready | Yes (2025) |
- ✅ All 197 tests pass
- ✅ Integration tests verify year configurations
- ✅ Speakers and CFP have dedicated wrapper tests
- ⏳ Diversity wrapper needs to be created and tested