Description
Idea
Currently, when generating stdlib API documentation, we generate UMD bundles for unit tests and benchmarks. When a user navigates to our package documentation, they can load unit tests and benchmarks and have those run without needing to setup a local environment. The pain point here is that creating separate bundles for each package is time consuming and adds significant heft to the www
repo.
The goal of this idea is to refactor the way we support unit tests and benchmarks to use ES6 modules and potentially skip bundling altogether. This has the downside of not supporting older browsers which don't support the <module>
tag, but is probably fine considering that running package unit tests and benchmarks is likely a forward looking concern.
Expected Outcomes
Users will be able to run unit tests and benchmarks directly in their web browsers by navigating to project API documentation and what is loaded are ES6 modules, not UMD bundles.
Involved Software
No other software is necessary.
Prerequisite Knowledge
JavaScript, Node.js, HTML/CSS, JSX/React.
Difficulty
Intermediate.
Project Length
350 hours.