\uD83D\uDDD3 Date, time, location
Date: at 15:00 UTC (timezone converter)
Location: https://meet.google.com/cxz-yjwi-gvi
\uD83D\uDDE3 Discussion topic(s)
One, maybe two topics to be presented or discussed in depth in the upcoming meeting.Plugin data handling and API standardization
🎥Recording
...
Video: Frontend Working Group
...
Video:
Chat:
Transcript: Meeting - 2024/12/19 11:59 GMT-03:00 - Recording
Chat: Frontend Working Group Meeting - 2024/12/19 11:59 GMT-03:00 - Chat
Transcript: Frontend Working Group Meeting - 2024/12/19 11:59 GMT-03:00 - Transcript
\uD83D\uDC65 Participants
Adolfo Brandes
Brian Smith
The list of participants, tagged if they’re registered in Confluence.
🤖 Summary
...
David Joy
Fox Piacenti
🤖 Summary
1. Scheduling Upcoming Meetings
Decided to skip the meeting on January 2nd due to expected low attendance.
The next meeting was scheduled for January 16th, despite overlapping with the company all-hands.
...
2. Plugin Data Handling & API Standardization
Current Issues with Plugin Props:
Brian Smith raised concerns about how data should be passed into plugin slots.
The current approach of passing props directly into plugins could become brittle and unmanageable.
If every new plugin requires new props, the API could quickly become bloated and difficult to maintain.
Alternative Solutions Explored:
David Joy suggested an alternative:
Avoid passing props directly.
Consider React Context instead of prop drilling.
Ensure a clear, documented API for plugins.
Fox Piacenti raised concerns about context performance implications, suggesting memoization to prevent unnecessary re-renders.
Adolfo Brandes emphasized that some level of official data support must be provided for plugins, whether through props, context, or another structure.
Proposed Next Steps:
Explore Context-based approaches instead of excessive prop drilling.
Ensure that any data structure (Context, Props, etc.) used for plugins is explicitly documented and maintained.
Consider creating predictable, reusable contexts for different types of data (e.g., a Course Info Context for course-related data).
Establish clear rules for what is considered part of the API, preventing arbitrary additions.
...
3. Long-Term Considerations for API Governance
The group acknowledged the need for a well-documented, stable API for plugin data access.
Key considerations for 2025:
Versioning & Stability: Ensure plugins don’t break due to unexpected data structure changes.
Documentation: Clearly define what data is officially supported and how plugins should access it.
Avoiding Unofficial Data Usage: Prevent plugin developers from relying on undocumented internal APIs that may change.
...
Key Takeaways:
✔ Avoid excessive prop drilling in plugins.
✔ Explore React Context as a structured way to pass data.
✔ Define clear API rules to ensure stability and maintainability.
✔ Standardize & document supported plugin data access methods.