dopant
v6.0.2
Published
The aerogel-weight & dead-simple resource loader π
Downloads
547
Readme
The aerogel-weight & dead-simple resource loader π
This package provides a lightweight dynamic resource loader for web browsers.
Abstract
- Promise-based API β³
- Parallel by default, ordered when required β‘
- Supports all
<link>relations (preconnect,preload,stylesheet, etc.) π - Supports all
<script>types (importmap,module,nomodule, etc.) π - Zero dependencies π½
Prerequisites
- Node.js
>= 20.0.0
Installation
npm install dopant --saveUsage
import dopant from 'dopant';
await dopant(
'/assets/css/layout.css',
'/assets/js/main.js',
[
'/assets/js/importmap.json',
{ type: 'importmap' },
],
[
'/assets/js/module.js',
{ defer: true, type: 'module' },
],
[
'/assets/webfonts/font.woff2',
{
as: 'font',
rel: 'preload',
type: 'font/woff2',
},
],
);API
dopant(...resources)
...resources{string | [string, Object]} Resource URL, w/wo extra attributes.- Returns: Promise that resolves to a list of resolutions.
Behavior
- CSS files default to
rel="stylesheet". - If
relis provided, a<link>element is created. - Otherwise, a
<script>element is created. - Scripts default to
async: true(unless overridden ordefer: trueis set).
For more details, please check tests in the repository.
