Beloader is a lightweight asset loader library. It provides simple means to trigger and monitor download of any asset (css, script, font...).
Its fine-grained event management and simple interface for plugins let anyone extends it with ease to own needs.
It particularly shines as a front-end loader cause it can manage all kinds of assets and not only scripts.
- Lightweight
- No more dealing with racing bets when loading in a web page or app
- Highly customizable dynamically imported loaders, callbacks and plugins
- Can load assets asynchronously (except raw binary data)
- Defer mode : each asset promise will be resolved exactly in the same order that they have been requested
- Awaiting mode : an asset promise will be resolved only when its declared dependencies are resolved
- Promise based : Each asset loading (item) exposes a promise interface that is resolved when asset ready or rejected in case of error
- Event based : You can hook custom callbacks at each step trigerred by specific events or create customs ones
- Plugin friendly : Beloader architecture makes adding plugins a breeze
You can read Beloader manual or API reference
Beloader is test-driven though it did not prevent all issues. Please report here any trouble or features request.
There is many more to do, implements specific loaders or create plugins. Don't mind to fork Beloader, tweak it and submit a pull request 😉
- Add an HTML loader
- Add an audio loader (or plugin because renderer ?)
- Add a video loader (or plugin because renderer ?)
- Create a bundler engine to build a custom unique script file with choosen loaders and plugins
- Create advanced demos
- Create more plugins 😉
- Create tests to improve coverage