Open ngokevin opened 7 years ago
Curation overhead aside, it's also a burden on authors to manually send PRs to our YAML file every time they do a minor or major release, and every time A-Frame itself does a release. So, I agree with the need to loosen up manual work required here. But if it was just that problem, we could deal with it by scraping NPM APIs better, and just having an expectation that package.json
be maintained correctly.
I have two questions about your proposal:
package.json
to detect the version of A-Frame they declare as a peerDependency
or dependency
, and rank things lower if that's < stable. We could sort by github stars, or by downloads / month, or have some manually curated set of "featured" components, but still accept all submissions.The purpose of the registry was:
Adding @kfarr since I think we've chatted about this. Loose thoughts:
1.
Even when I curated the components, which is maybe the best case scenario, it still didn't stop component decay. I've asked around, I don't think anyone would have time + knowledge to curate. Yeah, I would have a small set of featured components and then a looser list under it.
At least if the components are listed in a visual form (e.g., seeing how recently it was updated, maybe add some package.json fields), it would give an extra layer of indication to their quality than awesome-aframe
. While A-Frame is moving fast and breaking, we could let things loose for now, and look at baking things later.
2.
The Inspector integration was one of the original purposes and was a neat idea. In practice, I don't find it as useful. It's a Select Box that gives names of components with not much more information. Many components will not work under the context of a 2D visual Inspector (e.g., controls, backend components, event-based components). If you find one, you'll still need to search for the script tag and include it. How often do people use that feature? I personally use Inspector as a way to pause the scene and get a different view of the scene.
I think a smoother workflow is to find a component on the Registry, include it, and if you find it useful and it works, then you can fiddle with the Inspector values if it makes sense to for that component. So I would want to move it more towards a standalone page, that we can point to and say "here's literally every single feature that was ever made, here's some that are really, and here's some that may work but are at least a good reference or place to file issues".
That's fine with me. I do think that better indicators/sorting are necessary. The current health of components listed, or at least their likelihood of working via the inspector, needs to improve and I don't see room to loosen that up. But agreed we can improve things by means other than manual curation.
OK, I'll think about it some more.
@donmccurdy @fernandojsg
What I'm considering, since it's a lot of overhead to curate every component and tie each version to a component, and even when we do they're broken anyways. We don't have the time or manpower to act as full time code reviewers.
Have the Registry act as an index rather than a curated store, for a place for people to find every single component (perhaps showing the "good" ones up top). If they don't work, they can go file an issue, or copy/paste the code and modify it. And we can show application-specific components for inspiration (A-Blast, A-Painter). Then we can say "here's literally every single possible feature"
Showcased applications like A-Blast or A-Painter can have their own pages so people can see what components were used to make them.
I've heard Unity Store components are often broken as well, so there's precedent :)