This is the node package that contains the MANAWAVE library.
It uses vite and wdio to develop, build, and test the library. Everything is written in Typescript.
This will package and build MANAWAVE into /dist
.
pnpm nx build manawave
This will launch the dev website and hot reload changes to the source code.
pnpm nx dev manawave
This will test MANAWAVE across browsers.
pnpm nx test manawave
Generally, MANAWAVE tries to separate what's render and system logic. Render logic refers to anything that transforms system logic into visible DOM elements. System logic represent the "simulation" that moves all the stuff inside the marquee around. The "simulation" is done with numbers only. The "system" is the intersection of render and system logic.
The folder structure tries to accomodate for this process.
Contains code that control and manage the render loop used throughout the marquee.
Might branch off into its own library
Code that work with anything relating to the DOM.
Code that manage the marquee logic.
Contains utility functions.
TODO: cleanup and organize
Tests should all be in one file. This is to make sure wdio doesn't launch too many browsers in parallel.