Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve load times with preload/prefetch #645

Open
ivan-aksamentov opened this issue May 1, 2020 · 0 comments
Open

Improve load times with preload/prefetch #645

ivan-aksamentov opened this issue May 1, 2020 · 0 comments
Labels
good first issue Good for newcomers help wanted Extra attention is needed s:conf Scope: related to configuration s:ui Scope: related to user experience, user interface, usability, accessibility t:feat Type: request of a new feature, functionality, enchancement

Comments

@ivan-aksamentov
Copy link
Member

馃檵 Feature Request

馃敠 Context

Currently all the bundled resources are loaded sequentially on page load.
Additionally, clicking "Run" triggers downloading the webworker script before actual run happens.

Bundling is suboptimal and code-splitting is currently only on page-level. It does make sense for many applications, but for scenarios, we basically only have 1 page + a bunch of small pages nobody ever looks at.

馃槸 Describe the feature

Resource loading should be made smarter, and related resources can be fetched in parallel or merged together in webpack. There is no need to wait user actions in order to download some of the resources.

Code splitting should be done at component level and some components should be loaded before others. For example, navbar and the form can go early, while line plot and hidden modal windows can wait a few moments.

馃捇 Examples

馃拋 Possible Solution

Play wit Lighthouse, chrome dev tools and other profilers and make the app more responsive, using prefetch/preload and other resource priority functionalities of modern browsers.

Requires good understanding of webpack.

Additional bonus points for bundle and code-splitting revision and creative non=breaking solutions.

Related

@ivan-aksamentov ivan-aksamentov added t:feat Type: request of a new feature, functionality, enchancement help wanted Extra attention is needed needs triage Review this and assign labels s:conf Scope: related to configuration s:ui Scope: related to user experience, user interface, usability, accessibility and removed needs triage Review this and assign labels labels May 1, 2020
@ivan-aksamentov ivan-aksamentov added the good first issue Good for newcomers label May 11, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers help wanted Extra attention is needed s:conf Scope: related to configuration s:ui Scope: related to user experience, user interface, usability, accessibility t:feat Type: request of a new feature, functionality, enchancement
Projects
None yet
Development

No branches or pull requests

1 participant