diarmidmackenzie / aframe-components

A selection of useful A-Frame Components
MIT License
28 stars 6 forks source link

Various small fixes and typo corrections #29

Closed mrxz closed 9 months ago

mrxz commented 9 months ago

This PR addresses a couple of typo's and small mistakes in the HTML files. I'm working on some tooling for statically analysing A-Frame code/HTML and while testing it encountered these. As such, as small disclaimer, I haven't extensively tested these changes at runtime.

Short clarification for <a-asset-item>. While it works outside of <a-assets> it is intended to be inside one. It also doesn't do anything with a crossorigin attribute, that only applies to <img>, <audio> and <video>

diarmidmackenzie commented 9 months ago

Thank you. Very much appreciated!

Your static analysis tooling sounds like it could be extremely useful.

mrxz commented 9 months ago

Your static analysis tooling sounds like it could be extremely useful.

It's basically a language server for the HTML and (improved) type definitions for the JS/TS. By knowing the systems and components it can highlight, auto-complete and detect errors quite effectively: image

And on the JS/TS side it can likewise detect similar issues and provide auto-complete: image

Biggest roadblock is that it's hard to properly support JavaScript based A-Frame projects at the moment. I initially made it for TypeScript projects, but with JS there are many ways a project can be structured in terms of build steps, source layout, etc..., whereas with TS I can lift off the TypeScript compiler to get the relevant information without caring about the exact setup. Slowly chipping away at improving compatibility with projects "in the wild", but I might have to drop some of the complexer features for JS or make them less strict. It should be an drop-in tool/extension requiring minimal to no configuration/special setups.

It's currently on the back burner, but hopefully somewhere down the line I'll release it in some form.