[phpMyAdmin Developers] Introduction of Modern Javascript GSoC 18 Project

Piyush Vijay <[email protected]>
Newsgroups gmane.comp.php.phpmyadmin.devel
Message-ID <CAHr3=T-wfNAMKZYqYh++RDBfsmjEZ=7Nza2Qr=hnGRc1sV3w7A@mail.gmail.com>
Hi Community,

I was working on revamping the javascript code base to make it modular as
GSoC 18 project.

While revamping the code base, I introduced webpack as the bundler to
create a production bundle but the combined bundle coming out to be was
large which was not good in terms of performance.

So I have decided to use code splitting which will create small bundles and
they can be used for different pages. But there are two options for ode
splitting. The first one is to create multiple entry points which will
generate file specific bundles having independent scope of modules imported
in those specific files and the other one is dynamic imports which will
split the code at dynamic import points.

So I have decided to go with dynamic imports for code splitting because in
this method, the bundles will have a common scope and the bundles can be
downloaded at the time of need. We don't need to take care of which scripts
have been downloaded. Webpack uses a JSONP function for loading the chunks
asynchronously and these downloaded chunks will remain in the head of the
document until the page reloads. This will ensure that chunks which are
loaded once will not be loaded again.

Some Important Links:
https://webpack.js.org/guides/code-splitting/
https://medium.com/@piyush3079/week3-gsoc-with-phpmyadmin-41a1b7f1dd70
https://github.com/phpmyadmin/phpmyadmin/issues/14355

_______________________________________________
Developers mailing list
[email protected]
https://lists.phpmyadmin.net/mailman/listinfo/developers
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.