Skip to content

Conversation

@asyncapi-bot
Copy link
Contributor

@asyncapi-bot asyncapi-bot commented Jun 30, 2025

Automated changes by create-pull-request GitHub action

Summary by CodeRabbit

  • New Features

    • Added "AsyncAPI Server API" under APIs.
    • Introduced "Code-first tools" category with tools like "nestjs-asyncapi" and "SIO-AsyncAPI".
    • Added new framework "Glee" and new tool "Specmatic".
    • Added new CLI tool "AsyncAPI CLI" and new template "Node.js Multiprotocol Template".
  • Updates

    • Reorganized and updated tool categories, metadata, and ordering for improved clarity.
    • Updated "Zod Sockets" to appear in multiple relevant categories.
    • Swapped and updated metadata for several GitHub Action and IDE extension entries.
  • Bug Fixes

    • Corrected category and metadata assignments for GitHub Action tools.

@netlify
Copy link

netlify bot commented Jun 30, 2025

Deploy Preview for asyncapi-website ready!

Name Link
🔨 Latest commit 2d1ddb5
🔍 Latest deploy log https://app.netlify.com/projects/asyncapi-website/deploys/6861dd7df746200008304ed7
😎 Deploy Preview https://deploy-preview-4214--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 Jun 30, 2025

Walkthrough

This update reorganizes and updates metadata in several JSON configuration files. It swaps the "name" values between specific technology entries, restructures tool categories, updates descriptions, repository URLs, and ownership flags, and introduces new tools and categories. No changes to logic or schema structures were made.

Changes

File(s) Change Summary
config/all-tags.json Swapped "name" values between "Socket.IO" & "TypeScript", and "JetBrains" & "SmartPaste" in the "technologies" array.
config/tools-automated.json Reorganized tool categories, added new tools and categories, updated metadata, swapped order and metadata of several entries.
config/tools.json Swapped descriptions, repository URLs, and category tags between two "GitHub Action for Generator" entries under "GitHub Actions".

Sequence Diagram(s)

sequenceDiagram
  participant ConfigMaintainer
  participant JSONConfig

  ConfigMaintainer->>JSONConfig: Swap "name" fields between technology entries
  ConfigMaintainer->>JSONConfig: Reorganize tool categories and update metadata
  ConfigMaintainer->>JSONConfig: Swap metadata between GitHub Action entries
Loading

Possibly related PRs

Suggested labels

autoapproved, autoupdate

Suggested reviewers

  • derberg
  • akshatnema
  • anshgoyalevil
  • sambhavgupta0705
  • Mayaleeeee
  • devilkiller-ag
  • vishvamsinh28
  • asyncapi-bot-eve

Poem

In JSON fields we hop and swap,
Technologies twirl, their labels drop.
Tools find new homes in tidy arrays,
Actions exchange their descriptive phrase.
A bunny’s work is never done—
Reorg complete, now hop to fun!
🐇✨


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
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Explain this complex logic.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai explain this code block.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read src/utils.ts and explain its main purpose.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai generate docstrings to generate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@codecov
Copy link

codecov bot commented Jun 30, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 100.00%. Comparing base (3f37b20) to head (2d1ddb5).

Additional details and impacted files
@@            Coverage Diff            @@
##            master     #4214   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files           22        22           
  Lines          778       778           
  Branches       144       144           
=========================================
  Hits           778       778           

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

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: 1

🔭 Outside diff range comments (2)
config/all-tags.json (1)

270-289: Multiple “SmartPaste” & “JetBrains” tags now coexist

SmartPaste already appears at 276-279 and again at 281-284, while JetBrains was re-added at 286-289.
This causes the same uniqueness problem mentioned above and easily slips past JSON-schema validation because the schema only enforces type, not set-membership.

Please deduplicate the entries and keep a single, canonical colour/border pair for each.

config/tools.json (1)

1686-1704: Metadata mismatch & category typo in first “GitHub Action for Generator” tool

Issues spotted:

  1. description is null whereas the other entry has a proper description.
  2. categories contains "github-action" (singular) – the second entry uses "github-actions" (plural).
    The site’s filter logic is case-sensitive and string-based, so this yields two separate filters.
  3. The repository URL points to actions-marketplace-validations/asyncapi_github-action-for-generator, which seems unrelated to the AsyncAPI Generator CLI.

Please harmonise description, category spelling and confirm the repo link.

🧹 Nitpick comments (4)
config/tools.json (1)

1707-1725: Second “GitHub Action for Generator” tool duplicates title but represents the CLI

Having two objects with identical "title" but different purposes makes UI search confusing and violates the one-title-per-tool guideline. Consider:

• Rename this entry to something like “AsyncAPI CLI – GitHub Action” to reflect its real function.
• Align the categories value with the singular form chosen above after consolidation.

After the rename, check that no other list references rely on the exact previous title.

config/tools-automated.json (3)

53-60: Use canonical capitalization for TypeScript in the language field.
Other entries use the exact casing “TypeScript”; keeping this consistent avoids brittle, case-sensitive filters downstream.

-          "language": "Typescript",
+          "language": "TypeScript",

472-476: Fill in the missing description to avoid nulls in generated pages.

-        "description": null,
+        "description": "GitHub Action that wraps the AsyncAPI Generator."

872-877: Spell “WebSockets” with a capital “S” for consistency.

-        "title": "Node.js Websockets Template",
+        "title": "Node.js WebSockets Template",
📜 Review details

Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3f37b20 and 2d1ddb5.

📒 Files selected for processing (3)
  • config/all-tags.json (2 hunks)
  • config/tools-automated.json (14 hunks)
  • config/tools.json (3 hunks)
🧰 Additional context used
🧠 Learnings (4)
📓 Common learnings
Learnt from: asyncapi-bot
PR: asyncapi/website#0
File: :0-0
Timestamp: 2025-02-18T12:07:42.211Z
Learning: The following PR commands are supported in the asyncapi/website repository:
- `/please-take-a-look` or `/ptal`: Requests attention from reviewers who haven't reviewed the PR
- `/ready-to-merge` or `/rtm`: Triggers automerge when all conditions are met
- `/do-not-merge` or `/dnm`: Blocks automerge even if all conditions are met
- `/autoupdate` or `/au`: Adds autoupdate label to keep PR in sync with target branch
- `/update` or `/u`: One-time update of PR with latest changes from target branch
Learnt from: akshatnema
PR: asyncapi/website#3378
File: scripts/markdown/check-markdown.js:1-1
Timestamp: 2024-11-25T18:41:29.632Z
Learning: When updating workflows for the AsyncAPI website repository, use `.github/workflows/if-nodejs-pr-testing.yml` to include environment variables and secrets for Node.js PR testing.
Learnt from: bandantonio
PR: asyncapi/website#3393
File: markdown/blog/socketio-part2.md:506-506
Timestamp: 2024-11-13T20:40:29.580Z
Learning: When performing rebranding updates, there's no need to update the titles of bug reports in `dashboard.json`, even if they contain the old name.
Learnt from: akshatnema
PR: asyncapi/website#3265
File: tests/fixtures/toolsObjectData.js:51-52
Timestamp: 2024-10-09T17:35:36.557Z
Learning: When reviewing code in the 'asyncapi/website' repository, akshatnema prefers that I do not provide committable code suggestions.
Learnt from: anshgoyalevil
PR: asyncapi/website#3557
File: scripts/markdown/check-editlinks.js:58-59
Timestamp: 2025-01-08T15:15:00.759Z
Learning: In the AsyncAPI codebase, batch processing operations (like in the Dashboard script and check-editlinks.js) follow a sequential pattern using await in loops, which is the preferred approach for maintaining consistency across the codebase.
config/all-tags.json (2)
Learnt from: akshatnema
PR: asyncapi/website#3423
File: tests/index.test.js:2-7
Timestamp: 2025-01-18T08:44:43.614Z
Learning: In the AsyncAPI website project, JavaScript test files must include the .ts extension when importing TypeScript files (e.g., `require('../scripts/build-rss.ts')`). This is enforced by the project's configuration which uses `moduleResolution: "bundler"` in tsconfig.json and TypeScript-aware ESLint plugins. The .ts extensions are required even though the files are imported using CommonJS require statements.
Learnt from: akshatnema
PR: asyncapi/website#3423
File: tests/index.test.js:2-7
Timestamp: 2025-01-18T08:44:43.614Z
Learning: In the AsyncAPI website project, JavaScript test files must include the .ts extension when importing TypeScript files (e.g., `require('../scripts/build-rss.ts')`). This is a project-specific requirement enforced by the linting rules and build setup, even though it differs from typical Node.js behavior.
config/tools.json (1)
Learnt from: anshgoyalevil
PR: asyncapi/website#3557
File: tests/fixtures/markdown/check-edit-links-data.js:3-11
Timestamp: 2025-01-19T04:51:41.255Z
Learning: In the AsyncAPI website repository, the test data in `tests/fixtures/markdown/check-edit-links-data.js` intentionally includes inconsistent paths (with and without 'docs' prefix) to verify the script's ability to normalize and handle ambiguous path structures.
config/tools-automated.json (4)
Learnt from: anshgoyalevil
PR: asyncapi/website#3557
File: tests/fixtures/markdown/check-edit-links-data.js:3-11
Timestamp: 2025-01-19T04:51:41.255Z
Learning: In the AsyncAPI website repository, the test data in `tests/fixtures/markdown/check-edit-links-data.js` intentionally includes inconsistent paths (with and without 'docs' prefix) to verify the script's ability to normalize and handle ambiguous path structures.
Learnt from: akshatnema
PR: asyncapi/website#3423
File: tests/index.test.js:2-7
Timestamp: 2025-01-18T08:44:43.614Z
Learning: In the AsyncAPI website project, JavaScript test files must include the .ts extension when importing TypeScript files (e.g., `require('../scripts/build-rss.ts')`). This is a project-specific requirement enforced by the linting rules and build setup, even though it differs from typical Node.js behavior.
Learnt from: anshgoyalevil
PR: asyncapi/website#3557
File: tests/markdown/check-edit-links.test.js:20-46
Timestamp: 2025-01-14T14:58:38.076Z
Learning: In the AsyncAPI website codebase, the edit-page-config.json contains a fallback match entry that ensures determineEditLink function always has a valid target.value, making null checks unnecessary.
Learnt from: akshatnema
PR: asyncapi/website#3136
File: tests/fixtures/tools/automated-tools.json:8-9
Timestamp: 2024-11-01T12:48:22.034Z
Learning: In the `tests/fixtures/tools/automated-tools.json` file, the `language` field within the `filters` object can be either a string or an array. Both formats are acceptable and supported in the codebase.
⏰ Context from checks skipped due to timeout of 180000ms (8)
  • GitHub Check: Automerge PR autoapproved by a bot
  • GitHub Check: Redirect rules - asyncapi-website
  • GitHub Check: Header rules - asyncapi-website
  • GitHub Check: Pages changed - asyncapi-website
  • GitHub Check: Lighthouse CI
  • GitHub Check: Test NodeJS PR - windows-latest
  • GitHub Check: Test NodeJS PR - ubuntu-latest
  • GitHub Check: Test NodeJS PR - macos-13
🔇 Additional comments (3)
config/all-tags.json (1)

176-189: Remove Duplicate Technology Tags in config/all-tags.json

The current change re-introduces both “TypeScript” and “Socket.IO” even though they already appear earlier, breaking the uniqueness assumption downstream (e.g., filter counts).

Action items
• In config/all-tags.json, remove the extra “TypeScript” entry (currently at lines ~181–184).
• Remove the extra “Socket.IO” entry (currently at lines ~186–189).
• Confirm no other duplicate names exist by running:

jq -r '.technologies[].name' config/all-tags.json | sort | uniq -d
config/tools-automated.json (2)

5-24: Entry looks good – no blocking issues spotted.
The metadata for “AsyncAPI Server API” is complete and follows the existing schema.


714-730: Duplicate “AsyncAPI CLI” entry – confirm this is intentional.

Two almost-identical records differ only by repository URL and isAsyncAPIOwner. If the fork deserves listing, give it a distinctive title or description; otherwise remove to keep the catalogue concise.

Comment on lines 472 to 503
"title": "GitHub Action for Generator",
"description": "CLI to work with your AsyncAPI files. You can validate them and in the future use a generator and even bootstrap a new file. Contributions are welcomed!",
"description": null,
"links": {
"repoUrl": "https://github.com/asyncapi/cli"
"repoUrl": "https://github.com/actions-marketplace-validations/asyncapi_github-action-for-generator"
},
"filters": {
"technology": [
"AsyncAPI Generator"
],
"categories": [
"github-actions"
"github-action"
],
"hasCommercial": false,
"isAsyncAPIOwner": true
"isAsyncAPIOwner": false
}
},
{
"title": "GitHub Action for Generator",
"description": null,
"description": "CLI to work with your AsyncAPI files. You can validate them and in the future use a generator and even bootstrap a new file. Contributions are welcomed!",
"links": {
"repoUrl": "https://github.com/actions-marketplace-validations/asyncapi_github-action-for-generator"
"repoUrl": "https://github.com/asyncapi/cli"
},
"filters": {
"technology": [
"AsyncAPI Generator"
],
"categories": [
"github-action"
"github-actions"
],
"hasCommercial": false,
"isAsyncAPIOwner": false
"isAsyncAPIOwner": true
}
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

Category string mismatch and mis-categorised repo break filtering.

  1. First tool uses "github-action" while the second uses "github-actions". The consumer code expects one canonical value – pick one (the plural seems to dominate elsewhere).
  2. The second entry points to asyncapi/cli, which is a CLI, not a GitHub Action. If this is intentional, add a clarifying description; otherwise move it to the CLIs section.
-            "github-action"
+            "github-actions"

-          "repoUrl": "https://github.com/asyncapi/cli"
+          "repoUrl": "https://github.com/asyncapi/github-action-for-generator"   # or move entry

Committable suggestion skipped: line range outside the PR's diff.

🤖 Prompt for AI Agents
In config/tools-automated.json between lines 472 and 503, unify the category
string for GitHub Actions by changing "github-action" to "github-actions" to
maintain consistency. Also, since the second entry points to asyncapi/cli which
is a CLI and not a GitHub Action, either update its description to clarify this
or move this entry to the CLIs section to correctly categorize it.

@asyncapi-bot asyncapi-bot merged commit 002ac64 into master Jun 30, 2025
33 of 34 checks passed
@asyncapi-bot asyncapi-bot deleted the update-tools/regenerateTools branch June 30, 2025 00:46
@coderabbitai coderabbitai bot mentioned this pull request Jul 7, 2025
anushkaaaaaaaa pushed a commit to anushkaaaaaaaa/website that referenced this pull request Jul 10, 2025
@coderabbitai coderabbitai bot mentioned this pull request Jul 14, 2025
@coderabbitai coderabbitai bot mentioned this pull request Aug 18, 2025
@coderabbitai coderabbitai bot mentioned this pull request Oct 6, 2025
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.

3 participants