Skip to content

chore: update tools.json#4978

Merged
asyncapi-bot merged 1 commit intomasterfrom
update-tools/regenerateTools
Jan 19, 2026
Merged

chore: update tools.json#4978
asyncapi-bot merged 1 commit intomasterfrom
update-tools/regenerateTools

Conversation

@asyncapi-bot
Copy link
Contributor

@asyncapi-bot asyncapi-bot commented Jan 19, 2026

Automated changes by create-pull-request GitHub action

Summary by CodeRabbit

  • Chores
    • Updated tools and templates catalog with corrected repository links and improved descriptions for AsyncAPI Studio and HTML Template entries.
    • Refreshed and reorganized tool categorizations across multiple sections including editors, code generators, validators, frameworks, and other ecosystem components.
    • Updated language and technology mappings throughout the registry to ensure accurate classification and discoverability.

✏️ Tip: You can customize this high-level summary in your review settings.

@netlify
Copy link

netlify bot commented Jan 19, 2026

Deploy Preview for asyncapi-website ready!

Name Link
🔨 Latest commit 58eb96d
🔍 Latest deploy log https://app.netlify.com/projects/asyncapi-website/deploys/696d7ea535ebba000752f063
😎 Deploy Preview https://deploy-preview-4978--asyncapi-website.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 19, 2026

📝 Walkthrough

Walkthrough

Three configuration files are updated: language tags are swapped in config/all-tags.json, while config/tools-automated.json undergoes extensive reordering of tool entries across categories with updated metadata including descriptions, repository links, languages, and ownership flags. Meanwhile, config/tools.json reorders editor tool entries with updated descriptions and repository URLs.

Changes

Cohort / File(s) Summary
Language Tags Configuration
config/all-tags.json
SmartPaste and JetBrains language entry names swapped; color and borderColor fields remain unchanged
Tools Catalog Reorganization
config/tools-automated.json
Major restructuring across multiple tool categories: entries renamed (e.g., SIO-AsyncAPI → Zod Sockets), metadata updated (descriptions, repository URLs, documentation links), language/technology mappings adjusted, categories modified, and isAsyncAPIOwner flags toggled for multiple entries
Editor Tools Updates
config/tools.json
AsyncAPI Studio and HTML Template entries reordered with descriptions toggled between concrete text and null, and repository URLs shuffled across entries

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Suggested labels

autoapproved, autoupdate

Suggested reviewers

  • derberg
  • akshatnema
  • anshgoyalevil
  • sambhavgupta0705
  • Mayaleeeee

Poem

🐰 A shuffle of tags, a swap here, a swap there,
Tools rearranged with such digital care!
SmartPaste meets JetBrains in a graceful ballet,
While templates and studios dance their display,
Config files shimmer with organized might! ✨

🚥 Pre-merge checks | ✅ 2 | ❌ 1
❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Title check ❓ Inconclusive The title 'chore: update tools.json' is vague and does not convey the scope or nature of the changes, which include extensive tool catalog restructuring, renaming, and cross-section swapping across multiple configuration files. Provide a more specific title that reflects the actual changes, such as 'chore: regenerate tools and language configurations' or 'chore: update tool entries and language mappings across config files'.
✅ Passed checks (2 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@codecov
Copy link

codecov bot commented Jan 19, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (41fd41f) to head (58eb96d).
⚠️ Report is 1 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff            @@
##            master     #4978   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           22        22           
  Lines          796       796           
  Branches       146       146           
=========================================
  Hits           796       796           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@asyncapi-bot asyncapi-bot merged commit 49fb7df into master Jan 19, 2026
37 of 38 checks passed
@asyncapi-bot asyncapi-bot deleted the update-tools/regenerateTools branch January 19, 2026 00:49
@asyncapi-bot
Copy link
Contributor Author

⚡️ Lighthouse report for the changes in this PR:

Category Score
🔴 Performance 45
🟢 Accessibility 98
🟢 Best practices 92
🟢 SEO 100
🔴 PWA 33

Lighthouse ran on https://deploy-preview-4978--asyncapi-website.netlify.app/

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 3

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (4)
config/all-tags.json (1)

306-319: Remove duplicate "SmartPaste" entry from technologies array.

"SmartPaste" appears twice (lines 306–309 and 316–319) in the technologies array. The filtering code in components/tools/ToolsDashboard.tsx and components/tools/Filters.tsx iterates through this array to populate filter dropdowns, so duplicate entries will cause the same technology to appear multiple times in the UI.

Note: "VSCode" and "HTML" also have duplicate entries in this array—consider reviewing the entire array for other duplicates.

config/tools.json (2)

2726-2751: Remove test repository entry from production configuration.

The asyncapi-preview entry at lines 2726-2751 points to Savio629/testing2, a test repository. This entry duplicates the official asyncapi-preview tool (with asyncapi/vs-asyncapi-preview) and appears in cypress/fixtures/toolsData.json, confirming it is test data. Test entries should not exist in the main production configuration file (config/tools.json).


1348-1428: Remove test repositories from production tools catalog.

The entries at lines 1377 and 1407 reference test/fork repositories (TahaShahid203/async-api-issue and Shurtu-gal/action-test-bed) with null descriptions. These appear alongside the official AsyncAPI Studio entry and will be visible to users browsing tools. Since tools.json is generated by combining auto-discovered tools with manual entries, these test repositories should be explicitly excluded in tools-manual.json or the auto-discovery mechanism should be updated to filter them out.

config/tools-automated.json (1)

368-405: Remove duplicate AsyncAPI Studio entries with fork/test repositories.

The Editors section contains two duplicate "AsyncAPI Studio" entries that immediately follow the official entry. These fraudulent entries:

  • Share the official website URL (https://studio.asyncapi.com) but point to fork/test repositories
  • Have null descriptions and isAsyncAPIOwner: false, indicating they are incomplete or abandoned entries
  • Will confuse users browsing the tools catalog

Delete or correct these entries:

  • Line 368-385: References https://github.com/TahaShahid203/async-api-issue
  • Line 387-405: References https://github.com/Shurtu-gal/action-test-bed

The official AsyncAPI Studio entry (lines 349-367 with repo https://github.com/asyncapi/studio) should remain.

🤖 Fix all issues with AI agents
In `@config/tools-automated.json`:
- Around line 554-575: The "Specmatic" tool entries use an inconsistent category
value "CLIs" that should be normalized to lowercase "cli"; locate the JSON
objects with "title": "Specmatic" and update their "categories" arrays to
replace "CLIs" with "cli" so category filtering matches other tools; ensure all
occurrences of "CLIs" for Specmatic (and any duplicate Specmatic entries) are
changed to "cli".
- Around line 77-136: Update the inconsistent casing in the filters.language
values: change "Typescript" to "TypeScript" for the entry titled
"nestjs-asyncapi" (the filters.language field in that object) and change
"python" to "Python" for the entry titled "ChanX" (the filters.language field in
that object); also scan other tool entries for any additional language casing
mismatches and normalize them to the canonical casing used across the file.
- Around line 916-933: There is a duplicate "title":"asyncapi-preview" entry
whose "links.repoUrl" points to the test repo
"https://github.com/Savio629/testing2"; either remove this entire object or
replace its "links.repoUrl" value with the official URL
"https://github.com/asyncapi/vs-asyncapi-preview" and ensure the rest of the
fields (description, filters, hasCommercial/isAsyncAPIOwner) match the
authoritative entry to avoid inconsistent duplicates.
🧹 Nitpick comments (2)
config/tools-automated.json (1)

1001-1016: HTML Template entry with null description.

This entry (lines 1001-1016) has a null description and points to a fork repository (dipaksodani/async-gen). While null descriptions are technically valid per the schema, they provide poor user experience in the tools catalog.

config/tools.json (1)

2846-2924: Multiple HTML Template entries with mixed quality.

The first entry (lines 2846-2870) correctly references the official asyncapi/html-template with a proper description. The subsequent entries have null descriptions and point to fork repositories:

  • Line 2876: dipaksodani/async-gen
  • Line 2903: WSOL12/html-template

Consider whether these fork entries should be included in the official tools catalog.

Comment on lines +77 to 136
"title": "nestjs-asyncapi",
"description": "Utilize decorators to generate AsyncAPI document utilizing DTOs (similar to @nestjs/swagger) and a web UI.",
"links": {
"websiteUrl": "https://www.npmjs.com/package/zod-sockets",
"repoUrl": "https://github.com/RobinTail/zod-sockets"
"repoUrl": "https://github.com/flamewow/nestjs-asyncapi"
},
"filters": {
"language": "TypeScript",
"language": "Typescript",
"technology": [
"Node.js",
"TypeScript"
"NestJS"
],
"categories": [
"code-first",
"dsl",
"framework"
"code-first"
],
"hasCommercial": false,
"isAsyncAPIOwner": false
}
},
{
"title": "ChanX",
"description": "WebSocket framework for Django/FastAPI with AsyncAPI 3.0 spec generation and Python client generation from AsyncAPI schemas",
"title": "AsyncAPI.Net",
"description": "The AsyncAPI.NET SDK contains a useful object model for AsyncAPI documents in .NET along with common serializers to extract raw OpenAPI JSON and YAML documents from the model.",
"links": {
"docsUrl": "https://chanx.readthedocs.io/",
"repoUrl": "https://github.com/huynguyengl99/chanx"
"websiteUrl": "https://github.com/LEGO/AsyncAPI.NET/",
"repoUrl": "https://github.com/LEGO/AsyncAPI.NET"
},
"filters": {
"language": "python",
"language": "C#",
"technology": [
"Django",
"FastAPI"
".NET",
"ASP.NET"
],
"categories": [
"converters",
"code-first",
"code-generator"
"validator"
],
"hasCommercial": false,
"isAsyncAPIOwner": false
}
},
{
"title": "nestjs-asyncapi",
"description": "Utilize decorators to generate AsyncAPI document utilizing DTOs (similar to @nestjs/swagger) and a web UI.",
"title": "ChanX",
"description": "WebSocket framework for Django/FastAPI with AsyncAPI 3.0 spec generation and Python client generation from AsyncAPI schemas",
"links": {
"repoUrl": "https://github.com/flamewow/nestjs-asyncapi"
"docsUrl": "https://chanx.readthedocs.io/",
"repoUrl": "https://github.com/huynguyengl99/chanx"
},
"filters": {
"language": "Typescript",
"language": "python",
"technology": [
"Node.js",
"NestJS"
"Django",
"FastAPI"
],
"categories": [
"code-first"
"code-first",
"code-generator"
],
"hasCommercial": false,
"isAsyncAPIOwner": false
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Inconsistent casing in language filter values.

The language values have inconsistent casing:

  • Line 83: "Typescript" should be "TypeScript" (capital S)
  • Line 125: "python" should be "Python" (capital P)

This inconsistency may break filtering or tag matching logic that relies on exact string comparison.

🔧 Suggested fixes
         "filters": {
-          "language": "Typescript",
+          "language": "TypeScript",
         "filters": {
-          "language": "python",
+          "language": "Python",
🤖 Prompt for AI Agents
In `@config/tools-automated.json` around lines 77 - 136, Update the inconsistent
casing in the filters.language values: change "Typescript" to "TypeScript" for
the entry titled "nestjs-asyncapi" (the filters.language field in that object)
and change "python" to "Python" for the entry titled "ChanX" (the
filters.language field in that object); also scan other tool entries for any
additional language casing mismatches and normalize them to the canonical casing
used across the file.

Comment on lines +554 to +575
{
"title": "Specmatic",
"description": "Transform your API Specs into Executable Contracts with #NoCode in Seconds. Experience the power of Contract-Driven Development to confidently develop and independently deploy your Microservices and Microfrontends faster",
"links": {
"websiteUrl": "https://specmatic.io",
"docsUrl": "https://specmatic.io/documentation/",
"repoUrl": "https://github.com/specmatic/specmatic"
},
"filters": {
"language": "kotlin",
"technology": [
"Docker",
"maven"
],
"categories": [
"mocking-and-testing",
"CLIs"
],
"hasCommercial": true,
"isAsyncAPIOwner": false
}
},
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor

Inconsistent category naming: "CLIs" vs "cli".

The Specmatic entries use "CLIs" (uppercase) in the categories array (lines 570, 756), while other tools throughout the file use lowercase "cli". This inconsistency may affect category filtering and grouping.

🔧 Suggested fix
           "categories": [
             "mocking-and-testing",
-            "CLIs"
+            "cli"
           ],

Also applies to: 740-761

🤖 Prompt for AI Agents
In `@config/tools-automated.json` around lines 554 - 575, The "Specmatic" tool
entries use an inconsistent category value "CLIs" that should be normalized to
lowercase "cli"; locate the JSON objects with "title": "Specmatic" and update
their "categories" arrays to replace "CLIs" with "cli" so category filtering
matches other tools; ensure all occurrences of "CLIs" for Specmatic (and any
duplicate Specmatic entries) are changed to "cli".

Comment on lines 916 to 933
{
"title": "jAsyncAPI - IDEA plugin",
"description": "Idea plugin for the java-asyncapi - Helps to edit and validate AsyncAPI schemas.",
"title": "asyncapi-preview",
"description": "VSCode extension that enables you to:\n - Preview documentation generated using you AsyncAPI document. It uses AsyncAPI React component under the hood,\n - Create AsyncAPI documents faster using SmartPaste functionality\n",
"links": {
"websiteUrl": "https://plugins.jetbrains.com/plugin/15673-asyncapi",
"docsUrl": "https://github.com/asyncapi/jasyncapi-idea-plugin#usage",
"repoUrl": "https://github.com/asyncapi/jasyncapi-idea-plugin"
"repoUrl": "https://github.com/Savio629/testing2"
},
"filters": {
"language": "Kotlin",
"technology": [
"JetBrains",
"IntelliJ IDEA"
"VSCode",
"SmartPaste"
],
"categories": [
"ide-extension"
],
"hasCommercial": false,
"isAsyncAPIOwner": true
"isAsyncAPIOwner": false
}
}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟠 Major

🧩 Analysis chain

🏁 Script executed:

# First, let's find and examine the tools-automated.json file
fd tools-automated.json

Repository: asyncapi/website

Length of output: 87


🏁 Script executed:

# Read the specific lines mentioned in the review (916-933)
sed -n '916,933p' config/tools-automated.json

Repository: asyncapi/website

Length of output: 705


🏁 Script executed:

# Also check surrounding context to see other asyncapi-preview entries
sed -n '870,940p' config/tools-automated.json

Repository: asyncapi/website

Length of output: 2582


🏁 Script executed:

# Count total asyncapi-preview entries in the file
rg -i "asyncapi-preview" config/tools-automated.json -c

Repository: asyncapi/website

Length of output: 61


🌐 Web query:

Savio629/testing2 GitHub repository

💡 Result:

I couldn't find a public repository named "Savio629/testing2". I did find activity for the GitHub user savio629 (issues/PRs), so the account exists. [1]

Do you mean a different repo name, or could the repo be private? If you want, I can search again — please confirm the exact repo name or provide a link.

Sources:

  • savio629 activity summary. [1]

Remove or replace test repository entry for asyncapi-preview.

This IDE Extensions section contains a duplicate asyncapi-preview entry (lines 916-933) that points to https://github.com/Savio629/testing2. This repository appears to be non-existent or private, unlike the official entry at lines 881-897 that references https://github.com/asyncapi/vs-asyncapi-preview. Remove this entry or replace it with the correct official repository URL.

🤖 Prompt for AI Agents
In `@config/tools-automated.json` around lines 916 - 933, There is a duplicate
"title":"asyncapi-preview" entry whose "links.repoUrl" points to the test repo
"https://github.com/Savio629/testing2"; either remove this entire object or
replace its "links.repoUrl" value with the official URL
"https://github.com/asyncapi/vs-asyncapi-preview" and ensure the rest of the
fields (description, filters, hasCommercial/isAsyncAPIOwner) match the
authoritative entry to avoid inconsistent duplicates.

This was referenced Feb 2, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants