Previously we used a custom Gulp workflow to compile our ES6 source code into something that browsers could understand. This setup worked, but it was pretty unconventional. It also limited our ability to explicitly define a public API for extensions, which would've made backwards compatibility harder going forward.
The new Webpack setup is gold-standard. As opposed to converting all of the source code into System.js modules (all accessible to extensions), only the modules we export directly from
This change has also involved making some changes to the JS folder structure. Now there will only be one npm instance in the package root, and you will only have to run
I have fixed numerous bugs along the way, eliminating some common problems like Flarum showing translation keys instead of the actual English translations, and CSS not recompiling during development when you make some changes to a LESS file.
- Finalize the new JS folder structure and apply it to all extensions
- Merge the flarum/core
webpack branch into
- Clean up asset manager changes and merge into master