Skip to content

rewrite README with Mermaid diagram and full Kubernetes guide#66

Merged
viktorlindell12 merged 3 commits into
mainfrom
30-docs-root-readme-with-architecture-diagram-and-startup-guide
Jun 3, 2026
Merged

rewrite README with Mermaid diagram and full Kubernetes guide#66
viktorlindell12 merged 3 commits into
mainfrom
30-docs-root-readme-with-architecture-diagram-and-startup-guide

Conversation

@viktorlindell12

@viktorlindell12 viktorlindell12 commented Jun 1, 2026

Copy link
Copy Markdown
Owner

Summary by CodeRabbit

  • Documentation
    • Rewrote docs with a detailed architecture diagram, expanded event-flow sequencing, updated tech stack and service responsibilities
    • Enhanced Getting Started with Docker Compose and Kubernetes deployment & secret steps
    • Updated API reference with endpoint specs and auth requirements (including message listing and pin toggling)
  • Improvements
    • Improved message/bot message serialization to handle timestamps reliably across services
  • Chores
    • Expanded local ignore rules to cover additional build/cache artifacts

@viktorlindell12 viktorlindell12 linked an issue Jun 1, 2026 that may be closed by this pull request
@coderabbitai

coderabbitai Bot commented Jun 1, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 29bbdea3-9e47-4641-89e5-3743d20fb569

📥 Commits

Reviewing files that changed from the base of the PR and between 40019a1 and 942e946.

📒 Files selected for processing (4)
  • relay-bot-service/pom.xml
  • relay-bot-service/src/main/java/com/relay/bot/config/RabbitMqConfig.java
  • relay-message-service/pom.xml
  • relay-message-service/src/main/java/com/relay/message/config/RabbitMqConfig.java

📝 Walkthrough

Walkthrough

Rewrites README with a Mermaid architecture diagram, expanded event flow and Minikube/Docker Compose guides, updates API table, adds frontend .gitignore patterns, and configures Jackson (JavaTimeModule, no timestamps) for RabbitMQ converters with corresponding pom dependency additions.

Changes

Relay Platform Documentation and Configuration

Layer / File(s) Summary
Architecture and System Design
README.md (lines 3–70)
Mermaid diagram replaces ASCII documentation to show microservices, databases, and messaging connections. Tech stack and service tables are updated with JWT validation, gRPC user lookups, pinned-message permanence, and RabbitMQ consumer notes.
Event Flow and Message Publishing
README.md (lines 73–87)
Event flow is restructured with explicit ordering: message.published is emitted only after the message database transaction commits to prevent bot replies to rolled-back messages.
Deployment Guides
README.md (lines 89–171)
Docker Compose setup now includes .env.example copying and secret configuration. Kubernetes/Minikube instructions expand into detailed numbered steps for namespace creation, secret generation/application, infrastructure deployment (Postgres/RabbitMQ), service deployment, and service exposure via minikube tunnel.
API Reference and Build Configuration
README.md (lines 182–191), relay-frontend/.gitignore
API reference table is updated with specific /api/* endpoints, auth requirements, and descriptions including channel message listing and pin toggling. Frontend .gitignore adds patterns for *.local and tsconfig.tsbuildinfo build artifacts.
RabbitMQ JSON serialization and deps
relay-bot-service/pom.xml, relay-bot-service/src/main/java/com/relay/bot/config/RabbitMqConfig.java, relay-message-service/pom.xml, relay-message-service/src/main/java/com/relay/message/config/RabbitMqConfig.java
Added jackson-datatype-jsr310 (and jackson-databind for message service) and updated RabbitMqConfig.jsonMessageConverter() implementations to build a custom ObjectMapper (register JavaTimeModule, disable WRITE_DATES_AS_TIMESTAMPS) and pass it to Jackson2JsonMessageConverter.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

Poem

🐰 I nibbled docs and fixed the flow,

Diagrams bloom and servers glow,
Events wait till commits are true,
Jackson keeps the dates in view,
A README hop — and off I go!

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly describes the main changes: README rewrite with Mermaid diagram and Kubernetes guide, which aligns with the primary modifications shown in the raw summary.
Docstring Coverage ✅ Passed Docstring coverage is 100.00% which is sufficient. The required threshold is 80.00%.
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 docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch 30-docs-root-readme-with-architecture-diagram-and-startup-guide

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.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@README.md`:
- Line 190: The API docs line uses an ambiguous query parameter placeholder
"/api/messages?channel="; update the README entry to use an explicit placeholder
like "/api/messages?channel={channelId}" (or {channelName}) so callers know to
substitute a value; locate the table row containing the GET
/api/messages?channel= entry and replace the path with the clearer
/api/messages?channel={channelId} (or {channelName}) and optionally add a short
note about required format if applicable.
- Line 75: The fenced event-flow code block in README.md is missing a language
tag (triggering markdownlint MD040); update the fenced block around the event
flow so the opening fence includes a language identifier (e.g., add "text" after
the triple backticks) to mark the block as plain text; locate the event-flow
fenced block content (the lines starting "1. Client  →  POST /api/messages ..."
through "6. relay-bot-service POSTs a reply...") and change the opening "```" to
"```text".
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 20d10b34-d6a8-4234-9624-43ff9278117b

📥 Commits

Reviewing files that changed from the base of the PR and between 8e85c98 and 4d99579.

📒 Files selected for processing (4)
  • README.md
  • docs/.gitkeep
  • relay-frontend/.gitignore
  • relay-frontend/tsconfig.tsbuildinfo
💤 Files with no reviewable changes (1)
  • relay-frontend/tsconfig.tsbuildinfo

Comment thread README.md Outdated
Comment thread README.md Outdated
@viktorlindell12
viktorlindell12 merged commit facb7e2 into main Jun 3, 2026
6 checks passed
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.

docs: root README with architecture diagram and startup guide

1 participant