{"repo":"single-spa/self-hosted-shared-dependencies","free":true,"listed":false,"github":"https://github.com/single-spa/self-hosted-shared-dependencies","clone":"git clone https://github.com/single-spa/self-hosted-shared-dependencies.git","description":"A repo for self hosting shared dependencies","language":"JavaScript","stars":42,"topics":[],"license":"MIT","category":"self-hosted-apps","readme_excerpt":"self-hosted-shared-dependencies A tool for self hosting shared dependencies from npm Motivation To share dependencies between microfrontends with SystemJS, you need a URL reachable by the browser for each shared dependency. Using popular CDNs such as jsdelivr.net, unpkg.com, and cdnjs.com is the easiest way to do this, but requires that you rely on a third party service. For some organizations, self-hosting the dependencies is required for security or other reasons. The self-hosted-shared-dependencies project generates a directory of static frontend assets that can be hosted on a server or CDN of your choosing. The assets are generated upfront, so that the server does not have to do anything more than serve static files. An advantage of generating all files upfront is improved performance, availability, and scalability, since global object stores (such as AWS S3, Digital Ocean Spaces, or GCP Storage) generally are really good at that. Comparison to other tools Bundlers like webpack, rollup, etc do not produce separate files for each dependency, by default. Additionally, they generally do not create separate files for different versions of dependencies. Tools like jspm, snowpack, and vite can do this but often convert the packages to ESM format which is not usable by SystemJS. esm-bundle libraries produce SystemJS versions of npm packages, but there are only a few dozen libraries available. Using a forked version of unpkg generally requires running a live server in production ","default_branch":null,"files":null,"tree":[],"storefront":"/r/single-spa","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/single-spa/self-hosted-shared-dependencies/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}