-
-
Notifications
You must be signed in to change notification settings - Fork 950
chore(blog): add-gravitee-sponsorship-2025 #4257
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
✅ Deploy Preview for asyncapi-website ready!Built without sensitive environment variables
To edit notification comments on pull requests, go to your Netlify project configuration. |
WalkthroughA new markdown blog post was added announcing Gravitee's renewed platinum sponsorship of the AsyncAPI community for 2025. The article details Gravitee’s involvement, the partnership's goals, and its impact on the AsyncAPI ecosystem, including support for events, tooling, and community initiatives. Changes
Suggested labels
Suggested reviewers
Poem
Note ⚡️ Unit Test Generation is now available in beta!Learn more here, or try it out under "Finishing Touches" below. ✨ Finishing Touches🧪 Generate unit tests
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. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed 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)
Other keywords and placeholders
Documentation and Community
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #4257 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 22 22
Lines 778 778
Branches 144 144
=========================================
Hits 778 778 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (4)
markdown/blog/gravitee-sponsorship-2025.md (4)
35-38: Pluralize “cost” and split the long bullet for readabilityMinor copy tweaks:
- “cost” ➔ “costs”
- The fourth bullet is ~200 chars and hard to scan inside a list. Consider turning it into a follow-up paragraph after the list.
- - Operational and travel cost for events + - Operational and travel costs for events ... - - When we say Gravitee is helping us “hold nothing back,” we mean it, they’re helping build an ecosystem where everyone can contribute, learn, and grow, no matter their location or technical background.
44-49: Fix list nesting – header bullet renders oddlyRight now “By adopting AsyncAPI, Gravitee:” shows as a regular list item followed by peer items. For proper Markdown semantics:
- - By adopting AsyncAPI, Gravitee: - - Enables better **discoverability** … - - Enforces consistent **governance** … - - Improves **observability** … - - Reduces the **complexity** … +**By adopting AsyncAPI, Gravitee …** + + - Enables better **discoverability** … + - Enforces consistent **governance** … + - Improves **observability** … + - Reduces the **complexity** …This renders as a heading-style intro plus an indented sub-list, avoiding the current flat bullet soup.
56-63: Promote “Stay Connected” to a heading and tighten layoutHelps scanners reach the CTA section quickly.
-💜 Thank you, Gravitee, for standing with us, and for continuing to believe in the power of open, asynchronous systems. -Stay Connected +💜 Thank you, Gravitee, for standing with us, and for continuing to believe in the power of open, asynchronous systems. + +### Stay ConnectedAlso consider putting the external links in a bullet list under a single “Follow Gravitee” bullet to reduce visual noise.
64-64: Remove duplicate “more”-Stay tuned for more updates as we get closer to more AsyncAPI Conference 2025! +Stay tuned for updates as we get closer to AsyncAPI Conference 2025!
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
markdown/blog/gravitee-sponsorship-2025.md(1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 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
markdown/blog/gravitee-sponsorship-2025.md (1)
Learnt from: iambami
PR: asyncapi/website#4111
File: markdown/blog/community-spotlight-aayush.md:3-3
Timestamp: 2025-06-03T06:48:09.304Z
Learning: For AsyncAPI community spotlight blog posts, the frontmatter date should reflect the actual publication date, not the month being highlighted in the spotlight. For example, a "May Community Spotlight" can be published in June with a June date in the frontmatter.
⏰ Context from checks skipped due to timeout of 180000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Lighthouse CI
🔇 Additional comments (1)
markdown/blog/gravitee-sponsorship-2025.md (1)
3-4: Double-check front-matter conventions
- Is the
dateset to the intended publication day?- Some past posts use
type: communication(lowercase). Verify with the site’s front-matter schema to avoid build-time validation errors.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Except for the small suggestion made. Looks good to me. Thank you @iambami :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You're off to a good start @iambami. I mostly pointed out some typos or proofreading errors that could be improved.
|
Thank you all for your feedback. I will implement them. |
|
⚡️ Lighthouse report for the changes in this PR:
Lighthouse ran on https://deploy-preview-4257--asyncapi-website.netlify.app/ |
|
Changes made folks. |
|
Please give it a final read. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (3)
markdown/blog/gravitee-sponsorship-2025.md (3)
24-29: Content repetition — consider dropping one sentenceLines 24 and 26 essentially convey the same message about Gravitee aligning with AsyncAPI’s mission. Remove the duplication to keep the narrative crisp.
32-39: Mixed list/paragraph style reduces readabilityThe bullet list starts cleanly (lines 35-37) but line 38 continues the idea within a bullet and also includes a comma splice. Consider either:
• keeping line 38 as a separate paragraph after the list, or
• shortening it to a concise bullet phrase similar to the preceding items.
This improves skimmability of key sponsorship benefits.
58-65: Minor tone & style tweak (“If you’d like to learn more…”)LanguageTool flagged “If you want to learn more…”. Swapping to “If you’d like to learn more…” is a slightly softer call-to-action and aligns with previous marketing posts.
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
markdown/blog/gravitee-sponsorship-2025.md(1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 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#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.
markdown/blog/gravitee-sponsorship-2025.md (8)
Learnt from: iambami
PR: asyncapi/website#4111
File: markdown/blog/community-spotlight-aayush.md:3-3
Timestamp: 2025-06-03T06:48:09.304Z
Learning: For AsyncAPI community spotlight blog posts, the frontmatter date should reflect the actual publication date, not the month being highlighted in the spotlight. For example, a "May Community Spotlight" can be published in June with a June date in the frontmatter.
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.
Learnt from: sagarkori143
PR: asyncapi/website#0
File: :0-0
Timestamp: 2025-06-20T14:47:22.389Z
Learning: The AsyncAPI website modularization PR uses Promise.allSettled for parallel execution of build tasks, which provides better performance and fault isolation compared to sequential execution.
Learnt from: sagarkori143
PR: asyncapi/website#4192
File: npm/runners/build-pages-runner.ts:7-14
Timestamp: 2025-06-19T13:51:27.459Z
Learning: In the AsyncAPI website build system, individual runner functions use try-catch blocks that rethrow errors to maintain consistent error boundaries, while the top-level orchestrator in npm/index.ts provides meaningful error logging with task-specific context using logger.error(`Error building ${taskName}:`, error). This separation of concerns allows for clean error handling at different architectural layers.
Learnt from: sagarkori143
PR: asyncapi/website#4192
File: npm/runners/build-newsroom-videos-runner.ts:8-15
Timestamp: 2025-06-19T13:49:29.796Z
Learning: In the AsyncAPI website modularization project, error handling is centralized in the top-level orchestrator function (npm/index.ts) with comprehensive logging and context. Individual runner functions in npm/runners/ are kept simple and let errors propagate naturally to the centralized handler, avoiding redundant try-catch blocks that only rethrow errors.
Learnt from: JeelRajodiya
PR: asyncapi/website#3423
File: scripts/index.ts:29-31
Timestamp: 2025-03-16T15:55:44.257Z
Learning: In the AsyncAPI codebase, adding try-catch blocks around function calls is unnecessary when the only purpose is to add context to the error message, as errors will be thrown from the functions themselves with full stack traces that provide adequate context. Try-catch blocks should only be added when there's a need for graceful degradation, partial success behavior, or specific error handling logic.
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: TRohit20
PR: asyncapi/website#4107
File: markdown/docs/tools/studio/architecture.md:23-23
Timestamp: 2025-05-09T17:35:57.171Z
Learning: In the AsyncAPI Studio architecture documentation, "Layer Breakdown" is intentionally structured as an H3 heading (subsection) because it provides additional detail about the layered architecture pattern introduced earlier, rather than being a standalone main section.
🪛 LanguageTool
markdown/blog/gravitee-sponsorship-2025.md
[style] ~60-~60: Consider using an alternative to strengthen your wording.
Context: ... systems. 💜 ## Stay Connected If you want to learn more about Gravitee, check out...
(WANT_KEEN)
⏰ Context from checks skipped due to timeout of 180000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Test NodeJS PR - windows-latest
🔇 Additional comments (2)
markdown/blog/gravitee-sponsorship-2025.md (2)
1-15: Front-matter taxonomy deviates from existing blog conventions
type:is set toCommunicationwith an uppercase “C”. Existing posts use lowercase values such asblog,announcement, etc.tags:entries are title-case (Project Status,Marketing) while the taxonomy in previous posts is lowercase, hyphen-separated (e.g.,project-status,marketing).Please double-check the allowed vocabularies for both fields to avoid breaking filters on the website.
42-49: Protocol links are good; check for lint-rule “no trailing slash after markdown inline link”AsyncAPI markdown lint rules sometimes flag
<https://mqtt.org/>style bare links with trailing slash. Confirm the linter rules or remove trailing slashes to avoid CI markdown-lint noise.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me! :) What do you think @thulieblack?
|
|
||
| ## Gravitee + AsyncAPI: A Real-World Use Case | ||
|
|
||
| Behind the sponsorship is a real, practical investment in using AsyncAPI to build and manage asynchronous APIs. Gravitee enables organizations to work seamlessly across protocols like [Kafka](https://kafka.apache.org/), [MQTT](https://mqtt.org/), and [WebSockets](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API) using the AsyncAPI spec as a foundation for documentation, governance, and developer experience. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Gravitee enables organizations to work seamlessly across protocols
Basically, it repeats the same idea mentioned earlier in slightly different words (line 26). I assume that may be intentional
|
Changes implemented. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (3)
markdown/blog/gravitee-sponsorship-2025.md (3)
28-34: Pluralise and smooth bullet wording“Operational and travel cost for events.” → “Operational and travel costs for events.”
“Broader outreach and visibility in growing the AsyncAPI communities around the world.” reads a bit clunky; consider “…visibility to grow AsyncAPI communities worldwide.”
35-36: Break the long compound sentence for readabilityCurrent sentence chains multiple clauses with commas. Splitting into two sentences will improve flow and comprehension.
8-8: Add descriptive alt-text for the cover imageWhile
cover:sets the hero image, addingcoverAlt:(supported by the site generator) aids accessibility and SEO.
📜 Review details
Configuration used: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
markdown/blog/gravitee-sponsorship-2025.md(1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 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#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.
markdown/blog/gravitee-sponsorship-2025.md (9)
Learnt from: iambami
PR: #4111
File: markdown/blog/community-spotlight-aayush.md:3-3
Timestamp: 2025-06-03T06:48:09.304Z
Learning: For AsyncAPI community spotlight blog posts, the frontmatter date should reflect the actual publication date, not the month being highlighted in the spotlight. For example, a "May Community Spotlight" can be published in June with a June date in the frontmatter.
Learnt from: anshgoyalevil
PR: #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.
Learnt from: sagarkori143
PR: asyncapi/website#0
File: :0-0
Timestamp: 2025-06-20T14:47:22.389Z
Learning: The AsyncAPI website modularization PR uses Promise.allSettled for parallel execution of build tasks, which provides better performance and fault isolation compared to sequential execution.
Learnt from: bandantonio
PR: #4264
File: markdown/docs/tutorials/getting-started/coming-from-openapi.md:24-25
Timestamp: 2025-07-19T20:58:34.040Z
Learning: In the AsyncAPI website documentation, anchor references to specification sections can use camelCase format (e.g., #serverObject, #parameterObject, #messageObject) even if the actual HTML IDs on the spec page use hyphenated lowercase format. This is acceptable and should not be changed.
Learnt from: sagarkori143
PR: #4192
File: npm/runners/build-pages-runner.ts:7-14
Timestamp: 2025-06-19T13:51:27.459Z
Learning: In the AsyncAPI website build system, individual runner functions use try-catch blocks that rethrow errors to maintain consistent error boundaries, while the top-level orchestrator in npm/index.ts provides meaningful error logging with task-specific context using logger.error(Error building ${taskName}:, error). This separation of concerns allows for clean error handling at different architectural layers.
Learnt from: sagarkori143
PR: #4192
File: npm/runners/build-newsroom-videos-runner.ts:8-15
Timestamp: 2025-06-19T13:49:29.796Z
Learning: In the AsyncAPI website modularization project, error handling is centralized in the top-level orchestrator function (npm/index.ts) with comprehensive logging and context. Individual runner functions in npm/runners/ are kept simple and let errors propagate naturally to the centralized handler, avoiding redundant try-catch blocks that only rethrow errors.
Learnt from: JeelRajodiya
PR: #3423
File: scripts/index.ts:29-31
Timestamp: 2025-03-16T15:55:44.257Z
Learning: In the AsyncAPI codebase, adding try-catch blocks around function calls is unnecessary when the only purpose is to add context to the error message, as errors will be thrown from the functions themselves with full stack traces that provide adequate context. Try-catch blocks should only be added when there's a need for graceful degradation, partial success behavior, or specific error handling logic.
Learnt from: akshatnema
PR: #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: TRohit20
PR: #4107
File: markdown/docs/tools/studio/architecture.md:23-23
Timestamp: 2025-05-09T17:35:57.171Z
Learning: In the AsyncAPI Studio architecture documentation, "Layer Breakdown" is intentionally structured as an H3 heading (subsection) because it provides additional detail about the layered architecture pattern introduced earlier, rather than being a standalone main section.
⏰ Context from checks skipped due to timeout of 180000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Test NodeJS PR - windows-latest
🔇 Additional comments (2)
markdown/blog/gravitee-sponsorship-2025.md (2)
3-4: Confirm front-matter “type” value matches blog taxonomy
type: Communicationis uncommon in earlier posts (usuallyAnnouncement,Community, etc.). Double-check the accepted values to avoid the page landing in an unlisted category.
54-55: Optional: clarify gratitude line toneUsing an emoji in formal sponsorship posts is fine in AsyncAPI blog style, but verify consistency with other sponsorship announcements.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me! :) What do you think @bandantonio or @thulieblack?
|
|
||
| ## Gravitee + AsyncAPI: A Real-World Use Case | ||
|
|
||
| Behind Gravitee’s sponsorship is a real, practical investment in using the AsyncAPI specification to build and manage asynchronous APIs. Gravitee enables organizations to work seamlessly across protocols like [Kafka](https://kafka.apache.org/), [MQTT](https://mqtt.org/), and [WebSockets](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API) using the AsyncAPI spec as a foundation for documentation, governance, and developer experience. This approach strengthens discoverability and observability across distributed systems, making Gravitee a natural ally in advancing AsyncAPI’s mission and ecosystem. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There's repetition with line 28. Make section/line 28 focus on sponsorship, and then section/line 38 focus on use cases.
|
@iambami you have some comments |
|
The recent update has been done. Can you give this another review? |
|
#4257 (comment) @iambami please address these changes first |
We had Gravitee return as our platinum sponsor this year, and here is the announcement blog.
Ready for review @derberg @thulieblack @TRohit20 @akshatnema
Summary by CodeRabbit