Tools page review and suggestions
Great job on the new tools page :tada:! I looked over it today and saw a few suggestions.
Environments
I found it confusing to have online tools listed under validators. I think environments is pretty important information and should either be clearly labeled in the listing or presented separately somehow.
Hyper Schema
LDO Utility can be merged with Hyper Schema. LDO is part of hyper-schema.
I'm not sure any of these should actually be listed. They should at least somehow be marked as a work in progress.
- Core API Hyper-Schema codec - Appears to be just a few lines of code that doesn't have anything to do with hyper-schema or even JSON Schema in general.
- mokkabonna/json-hyper-schema - Appears to be incomplete. The author never got it to a usable state.
- @cloudflare/json-hyper-schema - Described as the beginning of an implementation that clearly didn't get very far before being abandoned.
The only complete and usable implementation of hyper-schema there has ever been is jsonary (draft-04) which doesn't seem to have survived the transition to the new page. I think it should be included and probably should be the only one included.
Abandoned Implementations
There are a lot of implementations listed here that are clearly abandoned. For example, json-schema-benchmark is known to be the source of misinformation due to being so out-of-date and maintainers being unresponsive. It would be nice if we could at least have some way of visually making it clear that the project is not maintained if not remove these altogether. I know it would be quite tedious to go through every implementation to determine if it's active or not, but it would be nice have a way to mark the ones we do know are abandoned.
Category Suggestions
There are a few categories that can probably be merged. Here are my suggestions.
- Merge LDO-utility into hyper-schema -- LDO is a hyper-schema thing
- Rename schema-to-web-UI to form-builder -- I was so confused why there were no tools listed for form builders. Eventually I realized that's what schema-to-web-UI was supposed to mean.
- Merge model-to-schema into code-to-schema -- This is really code-to-schema really means types-to-schema and types are type of modeling, so I don't think we need a separate category for model-to-schema.
- Merge schema-to-code into schema-to-types -- "Code" means "types" in this case, so there really isn't a difference in these categories.
- Merge util-draft-migration into util-format-conversion -- draft migration is just another kind of format conversion.
- Merge editor-plugins into editor -- I don't think it's necessary to have a separate category for editors and editor plugins.
- Merge linter-plugins into linter -- I don't think it's necessary to have a separate category for linters and linter plugins.
Thanks for the suggestions Jason. I had a similar feeling regarding online tools as Validators.
Rename schema-to-web-UI to form-builder
Instead of renaming the category, I suggest leaving schema-to-web-UI and adding form-builder because we have some tools under schema-to-web-UI that are not form builders like Stoplight Tree and Stoplight Viewer
Environment
I think we can create space to add this field to the table by finding a way to show the dialects using less width by reducing the font size and using two lines.
In addition, we can use smaller fonts for License, Language and Tool Type.
Dialects
I suggested showing the dialects chronologically in ascending order but it would be better in descending order.
EDIT: Regarding the Environments, initially we had a Group By view for tools with environments such as Github Actions, Web(Online), which was later discarded, should we add it back. Only a few tools have environment, so adding a new column with mostly empty values didn't seem fine. What do we think of adding some badges next to the tooling name to mark some tags such as deprecated, outdated, web etc. Lastly, the abandoned/obsolete tools data and page is yet to be merged with the new tooling page.
What do we think of adding some badges next to the tooling name to mark some tags such as
deprecated,outdated,webetc
This sounds great to me.
Instead of renaming the category, I suggest leaving schema-to-web-UI and adding form-builder because we have some tools under schema-to-web-UI that are not form builders like Stoplight Tree and Stoplight Viewer
When I first read the category "Schema to Web UI", I thought it was a duplicate of "Documentation". Generally the documentation tools take schemas and convert them to HTML or markdown that displays the schema in more human friendly way. That sounds like "Schema to Web UI" to me.
So, I think schema-to-web-ui is probably too vague a description to be a good category. I'm not familiar with the Stoplight tools. Isn't it something like a GUI schema builder? That does sound like a unique category. I'd call that a schema-builder in the web environment. There are other tools out there that I would consider schema-builders that aren't web based, but I don't see any that I know listed. Typebox is the one that comes to mind where the envirnoment is TypeScript.
Regarding the Environments, initially we had a Group By view for tools with environments such as Github Actions, Web(Online), which was later discarded, should we add it back.
Let's start by adding the environment to the search options. Later we can proceed with the badges ... and as a last step the category changes suggested by Jason. How that sounds?
Sub tasks:
- [x] Add environment filter/seach options to tools. (#959)
- [x] Merge abandoned/obsolete tools data and page with the new tooling page. (#1091)
- [x] Adding badges to mark tags such as deprecated, outdated, web etc. (#1091)
- [ ] Category changes
- [ ] Make the tooltip more evident or different to encourage users to click and see the tool details
- [ ] Display what the Bowtie column means.
@jdesrosiers @benjagm, could you please finalize and confirm the category changes you’d like me to update?
Rename schema-to-web-UI to form-builder
I think this is the only suggestion from my original list that doesn't necessarily have consensus yet. I think schema-to-web-ui should be split into form-builder and schema-builder as described in my last comment. Those are two distinct use cases and they aren't easy to find with the current naming. It appears that most of the listed tools are form builders. I would call Stoplight a schema-builder, but it appear that Stoplight tools listed aren't their schema builder product. "Stoplight JSON Schema Tree" appears to be a utility for traversing schemas and probably should be in the util-general-processing category. "Stoplight JSON Schema Viewer" appears to be a React component to display a schema in HTML and probably should be in the documentation category.
It seems like there aren't any tools in the schema-builder category right now, but there are definitely several known examples that aren't currently listed (Stoplight (web), TypeBox (TypeScript), Pydantic (Python)).
So, I suggest
- Rename schema-to-web-ui to form-builder
- Add schema-builder (Empty for now)
- Recategorize "Stoplight JSON Schema Tree" to util-general-processing
- Recategorize "Stoplight JSON Schema Viewer" to documentation
Other than that, I don't think there were any objections to my other suggestions in the original post.
@benjagm, does that sound good to you?
Hello @jdesrosiers @benjagm , I’m new here and following this issue. I see that the first three tasks (environment filter, merging obsolete tools, and badges) are done, but the category changes and UI improvements are still pending. Is there anything I can do to help move this forward?
@benjagm, it looks like this is waiting for your confirmation that you're ok with the proposed changes.
@Vishv0407, once we have confirmation, it's up to @DarhkVoyd if he wants to continue the work himself or assign to you.
Thanks for the update! I'll wait for @benjagm’s confirmation. If @DarhkVoyd decides to assign this to me, I'd be happy to help with the implementation. Let me know how you'd like to proceed!
Rename schema-to-web-UI to form-builder
I think this is the only suggestion from my original list that doesn't necessarily have consensus yet. I think schema-to-web-ui should be split into form-builder and schema-builder as described in my last comment. Those are two distinct use cases and they aren't easy to find with the current naming. It appears that most of the listed tools are form builders. I would call Stoplight a schema-builder, but it appear that Stoplight tools listed aren't their schema builder product. "Stoplight JSON Schema Tree" appears to be a utility for traversing schemas and probably should be in the util-general-processing category. "Stoplight JSON Schema Viewer" appears to be a React component to display a schema in HTML and probably should be in the documentation category.
It seems like there aren't any tools in the schema-builder category right now, but there are definitely several known examples that aren't currently listed (Stoplight (web), TypeBox (TypeScript), Pydantic (Python)).
So, I suggest
* Rename schema-to-web-ui to form-builder * Add schema-builder (Empty for now) * Recategorize "Stoplight JSON Schema Tree" to util-general-processing * Recategorize "Stoplight JSON Schema Viewer" to documentationOther than that, I don't think there were any objections to my other suggestions in the original post.
@benjagm, does that sound good to you?
@jdesrosiers followign up here. I agree with all the above. If I go and create new Issues for each of those items, are you happy for us to close this Issue?
If I go and create new Issues for each of those items, are you happy for us to close this Issue?
Yes. Go ahead.