castor2d
Here's the sdk documentation if you're curious to take a look:
https://www.scirra.com/manual/15/sdk
You can get the webgl context in the drawgl function of a plugin. C2's renderer assumes it's the only thing changing the state of the context so if a plugin changes something it should be changed back when it's done or it will break things. Also c2's renderer is batched so the current batch should be ended before drawing directly with webgl.
Also, c2 uses an old version of gl-matrix which isn't compatible with the new one used by your library. I ended up renaming everything in the new version to avoid conflicts. I was unable to find a cleaner solution.
As far as making a plugin the only types available are numbers, text and object types, which can make it tricky to access other kinds of types. I guess you could look in the plugin's section and look at the spine, spriter, and creature2d plugins to see how similar things were done. I think there was another plugin that I can't think of.