website icon indicating copy to clipboard operation
website copied to clipboard

Tools page review and suggestions

Open jdesrosiers opened this issue 1 year ago • 8 comments

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.

jdesrosiers avatar Sep 04 '24 22:09 jdesrosiers

Thanks for the suggestions Jason. I had a similar feeling regarding online tools as Validators.

benjagm avatar Sep 06 '24 07:09 benjagm

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

benjagm avatar Sep 06 '24 07:09 benjagm

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.

benjagm avatar Sep 06 '24 07:09 benjagm

Dialects

I suggested showing the dialects chronologically in ascending order but it would be better in descending order.

benjagm avatar Sep 06 '24 07:09 benjagm

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.

DarhkVoyd avatar Sep 06 '24 10:09 DarhkVoyd

What do we think of adding some badges next to the tooling name to mark some tags such as deprecated, outdated, web etc

This sounds great to me.

benjagm avatar Sep 06 '24 11:09 benjagm

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.

jdesrosiers avatar Sep 06 '24 21:09 jdesrosiers

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?

benjagm avatar Sep 19 '24 21:09 benjagm

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.

DarhkVoyd avatar Nov 04 '24 18:11 DarhkVoyd

@jdesrosiers @benjagm, could you please finalize and confirm the category changes you’d like me to update?

DarhkVoyd avatar Dec 21 '24 16:12 DarhkVoyd

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?

jdesrosiers avatar Dec 30 '24 20:12 jdesrosiers

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?

Vishv04 avatar Feb 22 '25 06:02 Vishv04

@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.

jdesrosiers avatar Feb 25 '25 20:02 jdesrosiers

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!

Vishv04 avatar Feb 26 '25 02:02 Vishv04

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?

@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?

Relequestual avatar Jun 20 '25 15:06 Relequestual

If I go and create new Issues for each of those items, are you happy for us to close this Issue?

Yes. Go ahead.

jdesrosiers avatar Jun 23 '25 17:06 jdesrosiers