Closed mmcgahan closed 6 years ago
nothing to add except that it looks like a good plan.
@mmcgahan, Are there any down the chain changes that teams next be aware of, thinking of usages in Pro and MUP repo's?
@eilinora at the moment I don't think there will be much if any change to the public interface besides tweaking some import paths - hopefully the sort of thing that can be done with a simple find-and-replace.
Any breaking API changes will be made very carefully, potentially with a deprecation period.
done
As this repo has stabilized, its underlying structure has become better defined, but the current module structure makes it difficult to work with features in isolation, and the scope of particular updates is initially difficult to determine because it's hard to get a sense of how many files might need to be touched.
I'd like to change that by restructuring the platform to be more clearly modular, with explicit entry points for consumer applications rather than the 'export all the things' setup we currently have. The module organization would also aim to have as few dependencies between modules as possible, so that updates can be confined to individual modules - in effect, it would be multiple independent 'packages' in a single repo.
This work would follow on from refactoring the server-side modules as plugins (outline copied over from this Google Doc):
Module outline
server
(Hapi)Hapi Plugins
tracking - https://meetup.atlassian.net/browse/WP-318api - https://meetup.atlassian.net/browse/WP-319service worker - wait for https://meetup.atlassian.net/browse/WP-321router
browser: React Router helpers - https://meetup.atlassian.net/browse/WP-337render
(React+Redux helpers)server
dom.jsx
createServerStore
browser
createBrowserStore
core
<PlatformApp />
fetchUtils
(optional) MWP build/run CLIdescribed in Google doc