Skip to content

Add RabbitMQ based social-media backend tutorial#540

Closed
pasindufernando1 wants to merge 11 commits into
wso2:mainfrom
pasindufernando1:socialmediaTute
Closed

Add RabbitMQ based social-media backend tutorial#540
pasindufernando1 wants to merge 11 commits into
wso2:mainfrom
pasindufernando1:socialmediaTute

Conversation

@pasindufernando1

@pasindufernando1 pasindufernando1 commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Purpose

Add social media tutorial content

Summary by CodeRabbit

  • Documentation
    • Added a new tutorial page for building an event-driven social media backend with REST APIs, sentiment screening, MySQL persistence, and Slack notifications via message queues.
    • Included prerequisites and step-by-step Parts 1–5, along with example endpoints and end-to-end run-and-test guidance.
    • Updated the documentation navigation by adding a new “Tutorials” section that includes the social media tutorial.

Copilot AI review requested due to automatic review settings June 17, 2026 13:33
@pasindufernando1 pasindufernando1 changed the title Add RabbitMQ based back end tutorial Add RabbitMQ based social-media backend tutorial Jun 17, 2026
@coderabbitai

coderabbitai Bot commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 55531b16-4747-4e7a-9ba9-429eaaff2bcf

📥 Commits

Reviewing files that changed from the base of the PR and between c93c9c0 and 8cd4e96.

📒 Files selected for processing (1)
  • en/docs/guides/tutorials/social-media.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • en/docs/guides/tutorials/social-media.md

📝 Walkthrough

Walkthrough

Adds a new 561-line Docusaurus tutorial page (en/docs/guides/tutorials/social-media.md) covering a five-part, event-driven social media backend using WSO2 Integrator, and registers it under a new "Tutorials" sidebar category in en/sidebars.ts.

Changes

Social Media Tutorial and Sidebar

Layer / File(s) Summary
Sidebar registration, architecture overview, and prerequisites
en/sidebars.ts, en/docs/guides/tutorials/social-media.md
Adds guides/tutorials/social-media as the sole entry in a new "Tutorials" sidebar category. The tutorial page opens with the three-integration architecture diagram (Social Media API, Sentiment API, Post Notifier), HTTP vs RabbitMQ contracts, and prerequisites (WSO2 Integrator, MySQL, RabbitMQ, Slack bot).
Project setup and initial Visual Designer workflow
en/docs/guides/tutorials/social-media.md
Part 1 covers creating the social-media project in WSO2 Integrator, navigating the Design view, and using the Show Source workflow.
Sentiment API implementation (Part 2)
en/docs/guides/tutorials/social-media.md
Part 2 documents building the HTTP Sentiment API service: Post, Probability, and Sentiment record types, the POST /api/sentiment resource, and the generated Ballerina service code.
Post Notifier implementation (Part 3)
en/docs/guides/tutorials/social-media.md
Part 3 documents the RabbitMQ-triggered post-notifier integration: configurables, Slack connector, RabbitMQ queue listener, onMessage handler, generated Ballerina code, and a Config.toml example.
Social Media API: database, connectors, and endpoints (Part 4)
en/docs/guides/tutorials/social-media.md
Part 4 covers MySQL schema and seed SQL, persist/MySQL/RabbitMQ/HTTP client connection wiring, GET /users endpoint, and POST /users/{id}/posts orchestration with user validation (404), negative sentiment rejection (406), MySQL insert, RabbitMQ new-post publish, and 201 success response.
Run instructions and testing (Part 5)
en/docs/guides/tutorials/social-media.md
Part 5 provides run-and-test guidance, Config.toml setup, Try It endpoint testing, and related tutorial links in the "What's next" section.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐇 Hippity-hop, a tutorial's born,
With RabbitMQ queues on a bright sunny morn!
MySQL persists every post with a squeak,
Slack gets a ping when the sentiments peak.
Five parts, three integrations, all wired with care—
This bunny approved it with a flourish of flair! 🎉

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description is incomplete; it only contains the Purpose section with minimal detail and is missing most required template sections (Goals, Approach, User stories, Release note, Documentation, etc.). Complete the PR description by filling in all required sections from the template, including Goals, Approach, User stories, Release note, Documentation, and other applicable sections with relevant details.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately summarizes the main change: adding a RabbitMQ-based social media backend tutorial.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

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

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with 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.

❤️ Share

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

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Adds a new “Social Media” tutorial under Guides → Tutorials, including the accompanying architecture diagram and a full end-to-end walkthrough (Sentiment API, Social Media API, and RabbitMQ-to-Slack notifier) for an event-driven backend example.

Changes:

  • Added a new tutorial page: “Build an Event-Driven Social Media Backend with RabbitMQ”.
  • Added a new architecture diagram SVG (and references an existing image set under the tutorial’s static assets).
  • Updated en/sidebars.ts to expose the new tutorial in the docs navigation.

Reviewed changes

Copilot reviewed 2 out of 43 changed files in this pull request and generated 6 comments.

File Description
en/static/img/guides/tutorials/social-media/architecture.svg Adds a new architecture diagram used by the tutorial.
en/sidebars.ts Adds a “Tutorials” category under Guides and links the new tutorial doc.
en/docs/guides/tutorials/social-media.md Adds the full RabbitMQ-based social media backend tutorial content and code snippets.

Comment thread en/sidebars.ts Outdated
Comment thread en/docs/guides/tutorials/social-media.md
Comment thread en/docs/guides/tutorials/social-media.md Outdated
Comment thread en/docs/guides/tutorials/social-media.md Outdated
Comment thread en/docs/guides/tutorials/social-media.md Outdated
Comment thread en/docs/guides/tutorials/social-media.md
@github-actions

github-actions Bot commented Jun 17, 2026

Copy link
Copy Markdown

Broken links, images & orphan pages

Passing — no broken links or images found.

Links/images come from one crawl of the production build (baseUrl-aware). Orphans are docs not referenced by sidebars.ts.

Summary

  • Broken links & images — total 0 · 🆕 introduced 0 · 📄 already on main 0
  • Orphan pages — total 8 · 🆕 introduced 0 · 📄 already on main 8

Broken links & images

Introduced by this PR

No new broken link(s)/image(s) introduced by this PR. ✅

Already on main — 0 total

None.

Orphan pages

Introduced by this PR

No new orphan page(s) introduced by this PR. ✅

Already on main — 8 total

Already present on the base branch (not caused by this PR):

Show 8
  • docs/deploy-operate/observe/datadog-integration
  • docs/deploy-operate/observe/elastic-stack-elk
  • docs/deploy-operate/observe/metrics-prometheus-grafana
  • docs/deploy-operate/observe/opensearch-integration
  • docs/deploy-operate/observe/recipe-elk-stack
  • docs/deploy-operate/observe/recipe-kubernetes-production
  • docs/deploy-operate/observe/recipe-local-development
  • docs/deploy-operate/observe/recipe-opensearch-setup

Comment thread en/docs/guides/tutorials/social-media.md
Comment thread en/docs/guides/tutorials/social-media.md Outdated
@pasindufernando1

Copy link
Copy Markdown
Contributor Author

Content is included and improved in #556

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants