AemiJS is structured as a Git repository with long-living branch. Actually, it includes es-module and node-module only. Each branch includes as much features as possible from every other unless there is no good reason or no compatibility at all, i.e. DOM features has nothing to do in Node branch. However, some features have to be tweaked according to their running environment (as below
ExtendedWorker is one of the main features of aemiJS. It straightforwardly consists in a wrapper for a
Worker that enables transferring workload to the
Worker and receive the computed result wrapped in a
Promise. Nothing is more annoying that dealing with event listeners communication when you have to use efficiently Workers. To do so, you just have to include the
Multithread-worker.js script in constructor arguments or via
importScripts in the Worker file. Also, the
ExtendedWorker truly enhances worker usage experience by allowing passing worker content directly in
ExtendedWorker constructor. What could be more appealing than that?
However, Node already gives the ability to pass worker content through the constructor but aemiJS provides the Promise feature through
ExtendedWorker even in Node. So, still a big deal.
AemiJS also tries to deal with big amounts of data and in this way provides a basic
Dataset Handler primarily designed to ease preprocessing of datas for machine learning. This feature is still in early stages of development but could be really helpful.
Element Creation Shorthand
Once upon a time, web developers used to write raw HTML. But not anymore, you could use Vue, React or Angular and spend quite a lot of time to understand and learn these frameworks or you could also just use…
AemiJS also provides:
- an in-worker Markdown Parser that fetches the marked Markdown parser library from a CDN by default but you can overwrite it to set your own in place ;
- a custom short-code manager that allows to place a short-code and it will call a function you should predefine before and display the processed result in place ;
- a functional-oriented array implementation, accompanied by a pipe and compose function ;
- a shorthand to wait for common page events or create custom delayed callbacks.