I might switch to the more "unity" way of associating scripts with objects, but right now you would extend the default SceneObject and add your functionality there, then register the new type and instantiate it via the json file for the scene loader.
Users can now add their code ontop of the engine without needing to reach into the core engine and change the code there.
Also made system config a json file.
Also the core engine is now available as an NPM package here: https://www.npmjs.com/package/syed-webgpu-engine?activeTab=readme
I might switch to the more "unity" way of associating scripts with objects, but right now you would extend the default SceneObject and add your functionality there, then register the new type and instantiate it via the json file for the scene loader.