Contributor Guidelines
Is your feature request related to a problem? Please describe.
src/plays/index.js (auto-generated — imports all plays statically)
src/common/playlists/PlayList.jsx (loads plays via import * as all_plays from 'plays')
src/common/routing/RouteDefs.jsx
Description:
All 110+ plays are imported statically into a single bundle via import * as all_plays from 'plays' in PlayList.jsx. This means every play (including heavy dependencies like TensorFlow.js, Leaflet, CodeMirror, and P5.js) is loaded regardless of which play the user visits. The auto-generated src/plays/index.js re-exports every play component eagerly.
What needs to be done:
Describe the solution you'd like.
- Modify the play registration system to use
React.lazy() and dynamic import() for each play
- Wrap play rendering in
<Suspense> with appropriate loading fallbacks
- Update or replace the auto-generated
src/plays/index.js to export lazy-loaded factories
- Verify that Webpack (via react-scripts) produces proper code-split chunks
- Add error boundaries per lazy-loaded play to handle chunk load failures
Describe alternatives you've considered.
No alternative solution i would like to prefer
Screenshot / Screenshare
No response
Additional context
Add apertre 3.0, hard label
Record
Code of Conduct
Contributor Guidelines
Is your feature request related to a problem? Please describe.
src/plays/index.js(auto-generated — imports all plays statically)src/common/playlists/PlayList.jsx(loads plays viaimport * as all_plays from 'plays')src/common/routing/RouteDefs.jsxDescription:
All 110+ plays are imported statically into a single bundle via
import * as all_plays from 'plays'inPlayList.jsx. This means every play (including heavy dependencies like TensorFlow.js, Leaflet, CodeMirror, and P5.js) is loaded regardless of which play the user visits. The auto-generatedsrc/plays/index.jsre-exports every play component eagerly.What needs to be done:
Describe the solution you'd like.
React.lazy()and dynamicimport()for each play<Suspense>with appropriate loading fallbackssrc/plays/index.jsto export lazy-loaded factoriesDescribe alternatives you've considered.
No alternative solution i would like to prefer
Screenshot / Screenshare
No response
Additional context
Add apertre 3.0, hard label
Record
Code of Conduct