Skip to content

Conversation

@tyaga001
Copy link
Owner

@tyaga001 tyaga001 commented Jan 2, 2026

Pull Request

Summary

Brief description of changes and motivation.

Type of Change

  • Bug fix (non-breaking change that fixes an issue)
  • New feature (non-breaking change that adds functionality)
  • Breaking change (fix or feature that causes existing functionality to change)
  • Documentation update
  • Refactoring/code cleanup
  • [ ✅] Content update (blog posts, tools data, etc.)

Changes Made

  • New article

Testing

  • Local development tested
  • Build passes (npm run build)
  • No TypeScript errors
  • No linting errors
  • Manual testing completed

Database Changes (if applicable)

  • Database migration included
  • Migration tested locally
  • Rollback plan documented

Content Changes (if applicable)

  • Tool data updated in src/lib/toolData.json
  • Blog post follows content guidelines
  • Images optimized and properly sized
  • SEO metadata updated

UI/UX Changes (if applicable)

  • Responsive design tested
  • Accessibility considerations addressed
  • Dark mode compatibility verified
  • Loading states implemented

Checklist

  • Code follows project style guidelines
  • Self-review completed
  • Documentation updated if needed
  • No new console warnings or errors
  • Performance impact considered

Screenshots/Demo

Related Issues

Additional Notes

Summary by CodeRabbit

  • New Features
    • Published two new featured blog articles: "EloqDoc vs MongoDB - Part 1: Architecture and Design Overview" and "EloqDoc vs MongoDB - Part 2: Feature-by-Feature Comparison."
  • Documentation
    • Added metadata and SEO details for both posts (titles, descriptions, cover images, publish dates).
  • Style
    • Minor formatting and layout cleanups across blog entries.

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

@vercel
Copy link

vercel bot commented Jan 2, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Review Updated (UTC)
devtoolsacademy Ready Ready Preview, Comment Jan 2, 2026 5:31pm

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 2, 2026

Walkthrough

Adds two new blog posts comparing EloqDoc and MongoDB (Part 1: Architecture and Part 2: Feature Comparison). Each post includes a new MDX page with exported metadata and both posts are registered in the blog data registry with a shared cover image and featured flags.

Changes

Cohort / File(s) Summary
Blog Data Registry
src/app/blog/data.ts
Imported EloqdocVSMongoDB cover image; appended two new blog objects to the exported allBlogs array (architecture and feature-comparison), both featured and dated 2026-01-02 (one marked isNew). Minor formatting reflow only.
Blog Article Pages
src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/page.mdx, src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx
Added two new MDX pages exporting metadata via getMetadata(...); each page renders BlogHeader and contains long-form, image-rich comparison content and diagrams. No runtime logic or interactive behavior introduced.

Sequence Diagram(s)

(omitted — changes are content additions without new multi-component control flow)

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Pre-merge checks

❌ Failed checks (1 inconclusive)
Check name Status Explanation Resolution
Description check ❓ Inconclusive The description is mostly a template with minimal substantive information; only the type of change and a partial 'Changes Made' entry are populated. Provide specific details about the two articles added (titles, scope), confirm all testing was completed, and verify content checklist items like SEO metadata and image optimization.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: adding two EloqDoc vs MongoDB comparison articles to the blog.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3fe7d90 and c74194d.

📒 Files selected for processing (2)
  • src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/page.mdx
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx
🧰 Additional context used
🧠 Learnings (3)
📚 Learning: 2024-12-04T09:02:22.583Z
Learnt from: tyaga001
Repo: tyaga001/devtoolsacademy PR: 45
File: src/components/Footer.tsx:15-24
Timestamp: 2024-12-04T09:02:22.583Z
Learning: When verifying the accessibility of blog post URLs in `src/components/Footer.tsx`, ensure that accessible URLs are not incorrectly flagged as inaccessible. Double-check the URLs before reporting accessibility issues.

Applied to files:

  • src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/page.mdx
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx
📚 Learning: 2024-11-21T12:59:54.908Z
Learnt from: tyaga001
Repo: tyaga001/devtoolsacademy PR: 31
File: posts/neon-vs-supabase.mdx:553-555
Timestamp: 2024-11-21T12:59:54.908Z
Learning: In `posts/neon-vs-supabase.mdx`, the external links at lines 553-555 are valid and accessible.

Applied to files:

  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx
📚 Learning: 2025-01-01T16:01:41.716Z
Learnt from: nirnejak
Repo: tyaga001/devtoolsacademy PR: 58
File: src/app/blog/[slug]/page.tsx:27-39
Timestamp: 2025-01-01T16:01:41.716Z
Learning: User "nirnejak" clarified that anchor links are not used for headings in this blog, so ephemeral UUID-based IDs are acceptable for runtime usage.

Applied to files:

  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx
🪛 LanguageTool
src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/page.mdx

[grammar] ~92-~92: Ensure spelling is correct
Context: ...grations can impact performance. 3. The mongos routers and config servers are addition...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~124-~124: Use a hyphen to join words.
Context: ...t protocol. MongoDB’s single-primary per shard model means writes are natural...

(QB_NEW_EN_HYPHEN)


[grammar] ~124-~124: Use a hyphen to join words.
Context: ...otocol. MongoDB’s single-primary per shard model means writes are naturally o...

(QB_NEW_EN_HYPHEN)

src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx

[style] ~59-~59: ‘a majority of’ might be wordy. Consider a shorter alternative.
Context: ...ncern: "majority" ensure the data is on a majority of replicas (preventing rollback on primar...

(EN_WORDINESS_PREMIUM_A_MAJORITY_OF)


[style] ~210-~210: ‘in conjunction with’ might be wordy. Consider a shorter alternative.
Context: ...e utilises hybrid logical clocks (HLCs) in conjunction with its own timestamping mechanism. This a...

(EN_WORDINESS_PREMIUM_IN_CONJUNCTION_WITH)


[style] ~231-~231: ‘a majority of’ might be wordy. Consider a shorter alternative.
Context: ...ds a single point of failure as long as a majority of nodes remain active, for instance, in a...

(EN_WORDINESS_PREMIUM_A_MAJORITY_OF)


[style] ~233-~233: ‘a majority of’ might be wordy. Consider a shorter alternative.
Context: ...new primary if a region fails, provided a majority of nodes are preserved. EloqDoc’s archite...

(EN_WORDINESS_PREMIUM_A_MAJORITY_OF)


[style] ~235-~235: ‘in conjunction with’ might be wordy. Consider a shorter alternative.
Context: ...s shared durable storage (object store) in conjunction with caching. The object storage (e.g., S3) ...

(EN_WORDINESS_PREMIUM_IN_CONJUNCTION_WITH)

🔇 Additional comments (2)
src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/page.mdx (1)

146-146: Internal link to Part 2 is correct.

The link uses the proper route /blog/eloqdoc-vs-mongodb-feature-comparison that matches Part 2's actual folder structure, ensuring smooth navigation between articles.

src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx (1)

1-406: Well-structured, comprehensive comparison article.

The blog post is well-organized with clear sections covering ACID compliance, scalability, data modeling, queries, transactions, replication, backup, security, and deployment models. The extensive use of images (19 total) effectively illustrates complex architectural concepts. The content flows logically from Part 1 and sets up Part 3 appropriately.


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

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

🧹 Nitpick comments (1)
src/app/blog/eloqdoc-vs-mongodb-part1/page.mdx (1)

125-125: Optional: Add hyphens for compound modifier.

For improved readability, consider hyphenating "single-primary per-shard model" since it's a compound modifier.

🔎 Suggested refinement
-   MongoDB's single-primary per shard model means writes are naturally ordered on that primary, simplifying conflict resolution on that shard (at the cost of that primary being a choke point).
+   MongoDB's single-primary per-shard model means writes are naturally ordered on that primary, simplifying conflict resolution on that shard (at the cost of that primary being a choke point).
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 3debfee and b00be64.

⛔ Files ignored due to path filters (4)
  • src/app/blog/eloqdoc-vs-mongodb-part1/cover.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part1/image1.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part1/image2.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part1/image3.png is excluded by !**/*.png
📒 Files selected for processing (2)
  • src/app/blog/data.ts
  • src/app/blog/eloqdoc-vs-mongodb-part1/page.mdx
🧰 Additional context used
🪛 LanguageTool
src/app/blog/eloqdoc-vs-mongodb-part1/page.mdx

[grammar] ~93-~93: Ensure spelling is correct
Context: ...grations can impact performance. 3. The mongos routers and config servers are addition...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~125-~125: Use a hyphen to join words.
Context: ...t protocol. MongoDB’s single-primary per shard model means writes are natural...

(QB_NEW_EN_HYPHEN)


[grammar] ~125-~125: Use a hyphen to join words.
Context: ...otocol. MongoDB’s single-primary per shard model means writes are naturally o...

(QB_NEW_EN_HYPHEN)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: build (18.x)
🔇 Additional comments (4)
src/app/blog/eloqdoc-vs-mongodb-part1/page.mdx (4)

21-25: LGTM!

The BlogHeader configuration is consistent with the metadata and the blog entry in data.ts.


93-93: Note: "mongos" is correct MongoDB terminology.

The static analysis tool flagged "mongos" as a potential spelling error, but this is the correct technical term for MongoDB's query router service. No change needed.


27-136: LGTM! Well-researched and balanced content.

The architectural comparison is technically sound, well-structured, and provides a balanced perspective on both EloqDoc and MongoDB. The explanations of key concepts (compute/storage separation, sharding, replication) are clear and accurate.


137-147: LGTM! Strong conclusion.

The conclusion effectively summarizes the architectural trade-offs and provides practical guidance for choosing between the two systems. The reference to Part 2 sets up the series well.

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

♻️ Duplicate comments (1)
src/app/blog/eloqdoc-vs-mongodb-part1/page.mdx (1)

6-6: Remove unused RelatedPosts import.

The RelatedPosts component is imported but not used anywhere in the file.

🧹 Nitpick comments (2)
src/app/blog/data.ts (1)

22-47: Consider the ordering of blog entries.

Part 2 is listed before Part 1 in the allBlogs array. While this may be intentional for blog feed display (showing most recent first), ensure this aligns with your desired presentation order, especially if readers should start with Part 1.

src/app/blog/eloqdoc-vs-mongodb-part2/page.mdx (1)

6-6: Remove unused RelatedPosts import.

The RelatedPosts component is imported but not used anywhere in this file.

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b00be64 and d4df105.

⛔ Files ignored due to path filters (20)
  • src/app/blog/eloqdoc-vs-mongodb-part2/cover.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image1.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image10.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image11.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image12.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image13.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image14.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image15.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image16.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image17.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image18.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image19.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image2.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image3.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image4.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image5.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image6.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image7.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image8.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-part2/image9.png is excluded by !**/*.png
📒 Files selected for processing (3)
  • src/app/blog/data.ts
  • src/app/blog/eloqdoc-vs-mongodb-part1/page.mdx
  • src/app/blog/eloqdoc-vs-mongodb-part2/page.mdx
🧰 Additional context used
🧠 Learnings (3)
📓 Common learnings
Learnt from: tyaga001
Repo: tyaga001/devtoolsacademy PR: 31
File: posts/neon-vs-supabase.mdx:553-555
Timestamp: 2024-11-21T12:59:54.908Z
Learning: In `posts/neon-vs-supabase.mdx`, the external links at lines 553-555 are valid and accessible.
📚 Learning: 2024-12-04T09:02:22.583Z
Learnt from: tyaga001
Repo: tyaga001/devtoolsacademy PR: 45
File: src/components/Footer.tsx:15-24
Timestamp: 2024-12-04T09:02:22.583Z
Learning: When verifying the accessibility of blog post URLs in `src/components/Footer.tsx`, ensure that accessible URLs are not incorrectly flagged as inaccessible. Double-check the URLs before reporting accessibility issues.

Applied to files:

  • src/app/blog/data.ts
  • src/app/blog/eloqdoc-vs-mongodb-part1/page.mdx
📚 Learning: 2024-11-21T12:59:54.908Z
Learnt from: tyaga001
Repo: tyaga001/devtoolsacademy PR: 31
File: posts/neon-vs-supabase.mdx:553-555
Timestamp: 2024-11-21T12:59:54.908Z
Learning: In `posts/neon-vs-supabase.mdx`, the external links at lines 553-555 are valid and accessible.

Applied to files:

  • src/app/blog/eloqdoc-vs-mongodb-part1/page.mdx
🪛 LanguageTool
src/app/blog/eloqdoc-vs-mongodb-part2/page.mdx

[style] ~60-~60: ‘a majority of’ might be wordy. Consider a shorter alternative.
Context: ...ncern: "majority" ensure the data is on a majority of replicas (preventing rollback on primar...

(EN_WORDINESS_PREMIUM_A_MAJORITY_OF)


[style] ~211-~211: ‘in conjunction with’ might be wordy. Consider a shorter alternative.
Context: ...e utilises hybrid logical clocks (HLCs) in conjunction with its own timestamping mechanism. This a...

(EN_WORDINESS_PREMIUM_IN_CONJUNCTION_WITH)


[style] ~232-~232: ‘a majority of’ might be wordy. Consider a shorter alternative.
Context: ...ds a single point of failure as long as a majority of nodes remain active, for instance, in a...

(EN_WORDINESS_PREMIUM_A_MAJORITY_OF)


[style] ~234-~234: ‘a majority of’ might be wordy. Consider a shorter alternative.
Context: ...new primary if a region fails, provided a majority of nodes are preserved. EloqDoc’s archite...

(EN_WORDINESS_PREMIUM_A_MAJORITY_OF)


[style] ~236-~236: ‘in conjunction with’ might be wordy. Consider a shorter alternative.
Context: ...s shared durable storage (object store) in conjunction with caching. The object storage (e.g., S3) ...

(EN_WORDINESS_PREMIUM_IN_CONJUNCTION_WITH)

src/app/blog/eloqdoc-vs-mongodb-part1/page.mdx

[grammar] ~93-~93: Ensure spelling is correct
Context: ...grations can impact performance. 3. The mongos routers and config servers are addition...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~125-~125: Use a hyphen to join words.
Context: ...t protocol. MongoDB’s single-primary per shard model means writes are natural...

(QB_NEW_EN_HYPHEN)


[grammar] ~125-~125: Use a hyphen to join words.
Context: ...otocol. MongoDB’s single-primary per shard model means writes are naturally o...

(QB_NEW_EN_HYPHEN)

🔇 Additional comments (1)
src/app/blog/eloqdoc-vs-mongodb-part1/page.mdx (1)

35-35: No issues found. All external links in the article are accessible and point to correct destinations:

@tyaga001 tyaga001 changed the title Eloqdoc vs Mongodb Article Part1 Eloqdoc vs Mongodb Articles Jan 2, 2026
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
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: 2

🧹 Nitpick comments (2)
src/app/blog/data.ts (2)

13-13: Consider consistent casing in import name.

The import name uses EloqdocVSMongoDB (lowercase 'd'), but the article titles consistently use "EloqDoc" (uppercase 'D'). While this doesn't affect functionality, renaming to EloqDocVSMongoDB would improve consistency.

🔎 Proposed refactor
-import EloqdocVSMongoDB from "@/app/blog/eloqdoc-vs-mongodb-part1/cover.png"
+import EloqDocVSMongoDB from "@/app/blog/eloqdoc-vs-mongodb-part1/cover.png"

Then update references on lines 31 and 44:

-    image: EloqdocVSMongoDB.src,
+    image: EloqDocVSMongoDB.src,

22-47: Consider reordering entries and aligning isNew flags.

Two observations:

  1. Ordering: Part 2 appears before Part 1 in the array. For a multi-part series published on the same date, consider placing Part 1 first so readers encounter articles in logical sequence.

  2. Inconsistent isNew flags: Part 1 has isNew: true while Part 2 has isNew: false, despite both being published on "2026-01-02T00:00:00Z". For consistency, both should have the same isNew value.

🔎 Proposed fix

Swap the order and align the flags:

 export const allBlogs = [
   {
     author: "Ankur Tyagi",
-    slug: "eloqdoc-vs-mongodb-feature-comparison",
-    title: "EloqDoc vs MongoDB - Part 2: Feature-by-Feature Comparison",
-    excerpt: "Feature-by-feature comparison of EloqDoc and MongoDB capabilities",
+    slug: "eloqdoc-vs-mongodb-architecture-and-design",
+    title: "EloqDoc vs MongoDB - Part 1: Architecture and Design Overview",
+    excerpt: "An overview of EloqDoc and MongoDB architecture",
     description:
-      "A detailed comparison of key features including transactions, indexing, consistency guarantees, and query capabilities. This part highlights where the two databases overlap and where their design philosophies clearly diverge in real world usage.",
+      "This article breaks down the core architecture of EloqDoc and MongoDB. It focuses on storage layout, replication model, and how each system is designed to scale. The goal is to understand what tradeoffs were made at the foundation level before looking at features or performance.",
     publishedAt: "2026-01-02T00:00:00Z",
     category: "Databases",
     image: EloqdocVSMongoDB.src,
-    isNew: false,
+    isNew: true,
     isFeatured: true,
   },
   {
     author: "Ankur Tyagi",
-    slug: "eloqdoc-vs-mongodb-architecture-and-design",
-    title: "EloqDoc vs MongoDB - Part 1: Architecture and Design Overview",
-    excerpt: "An overview of EloqDoc and MongoDB architecture",
+    slug: "eloqdoc-vs-mongodb-feature-comparison",
+    title: "EloqDoc vs MongoDB - Part 2: Feature-by-Feature Comparison",
+    excerpt: "Feature-by-feature comparison of EloqDoc and MongoDB capabilities",
     description:
-      "This article breaks down the core architecture of EloqDoc and MongoDB. It focuses on storage layout, replication model, and how each system is designed to scale. The goal is to understand what tradeoffs were made at the foundation level before looking at features or performance.",
+      "A detailed comparison of key features including transactions, indexing, consistency guarantees, and query capabilities. This part highlights where the two databases overlap and where their design philosophies clearly diverge in real world usage.",
     publishedAt: "2026-01-02T00:00:00Z",
     category: "Databases",
     image: EloqdocVSMongoDB.src,
     isNew: true,
     isFeatured: true,
   },
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b713c4f and f62d19d.

📒 Files selected for processing (1)
  • src/app/blog/data.ts
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2024-12-04T09:02:22.583Z
Learnt from: tyaga001
Repo: tyaga001/devtoolsacademy PR: 45
File: src/components/Footer.tsx:15-24
Timestamp: 2024-12-04T09:02:22.583Z
Learning: When verifying the accessibility of blog post URLs in `src/components/Footer.tsx`, ensure that accessible URLs are not incorrectly flagged as inaccessible. Double-check the URLs before reporting accessibility issues.

Applied to files:

  • src/app/blog/data.ts
🪛 GitHub Actions: Node.js CI
src/app/blog/data.ts

[error] 26-26: prettier/prettier: Insert newline at line 26 (formatting issue detected by Prettier).

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

♻️ Duplicate comments (1)
src/app/blog/data.ts (1)

13-13: Consider importing Part 2's cover image separately.

The import references the Part 1 folder (eloqdoc-vs-mongodb-architecture-and-design), and both blog entries use the same EloqdocVSMongoDB.src. If Part 2 has its own cover image at src/app/blog/eloqdoc-vs-mongodb-feature-comparison/cover.png, consider importing and using it for visual distinction between the articles.

🧹 Nitpick comments (2)
src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/page.mdx (1)

5-5: Unused import: Callout is imported but never used.

The Callout component is imported but not utilized anywhere in this article. Consider removing it to keep imports clean.

🔎 Proposed fix
 import { getMetadata } from "@/lib/metadata"
 import BlogHeader from "@/components/blog/BlogHeader"
-import { Callout } from "@/components/blog/Callout"
src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx (1)

5-5: Unused import: Callout is imported but never used.

Similar to Part 1, the Callout component is imported but not utilized in this article.

🔎 Proposed fix
 import { getMetadata } from "@/lib/metadata"
 import BlogHeader from "@/components/blog/BlogHeader"
-import { Callout } from "@/components/blog/Callout"
📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 431c3ac and 3fe7d90.

⛔ Files ignored due to path filters (24)
  • src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/cover.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/image1.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/image2.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/image3.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/cover.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image1.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image10.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image11.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image12.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image13.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image14.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image15.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image16.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image17.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image18.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image19.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image2.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image3.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image4.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image5.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image6.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image7.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image8.png is excluded by !**/*.png
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/image9.png is excluded by !**/*.png
📒 Files selected for processing (3)
  • src/app/blog/data.ts
  • src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/page.mdx
  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx
🧰 Additional context used
🧠 Learnings (2)
📚 Learning: 2024-11-21T12:59:54.908Z
Learnt from: tyaga001
Repo: tyaga001/devtoolsacademy PR: 31
File: posts/neon-vs-supabase.mdx:553-555
Timestamp: 2024-11-21T12:59:54.908Z
Learning: In `posts/neon-vs-supabase.mdx`, the external links at lines 553-555 are valid and accessible.

Applied to files:

  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx
📚 Learning: 2024-12-04T09:02:22.583Z
Learnt from: tyaga001
Repo: tyaga001/devtoolsacademy PR: 45
File: src/components/Footer.tsx:15-24
Timestamp: 2024-12-04T09:02:22.583Z
Learning: When verifying the accessibility of blog post URLs in `src/components/Footer.tsx`, ensure that accessible URLs are not incorrectly flagged as inaccessible. Double-check the URLs before reporting accessibility issues.

Applied to files:

  • src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx
  • src/app/blog/data.ts
🧬 Code graph analysis (1)
src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx (5)
mdx-components.tsx (1)
  • main (24-64)
src/app/blog/page.tsx (2)
  • BlogPage (17-58)
  • post (31-54)
src/components/blog/BlogHeader.tsx (1)
  • content (20-95)
src/components/AISummary.tsx (1)
  • summary (8-62)
src/components/blog/ServerlessDiagram.tsx (1)
  • chartContent (5-21)
🪛 LanguageTool
src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx

[style] ~59-~59: ‘a majority of’ might be wordy. Consider a shorter alternative.
Context: ...ncern: "majority" ensure the data is on a majority of replicas (preventing rollback on primar...

(EN_WORDINESS_PREMIUM_A_MAJORITY_OF)


[style] ~210-~210: ‘in conjunction with’ might be wordy. Consider a shorter alternative.
Context: ...e utilises hybrid logical clocks (HLCs) in conjunction with its own timestamping mechanism. This a...

(EN_WORDINESS_PREMIUM_IN_CONJUNCTION_WITH)


[style] ~231-~231: ‘a majority of’ might be wordy. Consider a shorter alternative.
Context: ...ds a single point of failure as long as a majority of nodes remain active, for instance, in a...

(EN_WORDINESS_PREMIUM_A_MAJORITY_OF)


[style] ~233-~233: ‘a majority of’ might be wordy. Consider a shorter alternative.
Context: ...new primary if a region fails, provided a majority of nodes are preserved. EloqDoc’s archite...

(EN_WORDINESS_PREMIUM_A_MAJORITY_OF)


[style] ~235-~235: ‘in conjunction with’ might be wordy. Consider a shorter alternative.
Context: ...s shared durable storage (object store) in conjunction with caching. The object storage (e.g., S3) ...

(EN_WORDINESS_PREMIUM_IN_CONJUNCTION_WITH)

src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/page.mdx

[grammar] ~92-~92: Ensure spelling is correct
Context: ...grations can impact performance. 3. The mongos routers and config servers are addition...

(QB_NEW_EN_ORTHOGRAPHY_ERROR_IDS_1)


[grammar] ~124-~124: Use a hyphen to join words.
Context: ...t protocol. MongoDB’s single-primary per shard model means writes are natural...

(QB_NEW_EN_HYPHEN)


[grammar] ~124-~124: Use a hyphen to join words.
Context: ...otocol. MongoDB’s single-primary per shard model means writes are naturally o...

(QB_NEW_EN_HYPHEN)

🔇 Additional comments (4)
src/app/blog/eloqdoc-vs-mongodb-architecture-and-design/page.mdx (1)

20-145: Article content looks well-structured.

The content is comprehensive and well-organized, covering architecture comparisons effectively. The static analysis grammar hints (e.g., "mongos", hyphenation) are either technical terms or stylistic preferences that don't require changes.

src/app/blog/data.ts (2)

22-48: New blog entries look complete.

Both entries have appropriate metadata. Note that Part 2 appears before Part 1 in the array, which may affect display order on the blog listing page. If chronological or logical ordering is preferred, consider reversing these entries.


111-215: Formatting adjustments to existing entries look fine.

The changes to existing blog entries appear to be cosmetic line-break adjustments with no substantive content modifications.

src/app/blog/eloqdoc-vs-mongodb-feature-comparison/page.mdx (1)

42-406: Article content is comprehensive and well-organized.

The feature comparison is thorough, covering all major database aspects with appropriate diagrams. The security comparison table and deployment options are particularly well-structured. Static analysis style suggestions (wordiness) are stylistic preferences and don't require changes.

@tyaga001 tyaga001 merged commit a702c6b into main Jan 2, 2026
6 checks passed
This was referenced Jan 6, 2026
@coderabbitai coderabbitai bot mentioned this pull request Jan 20, 2026
27 tasks
@coderabbitai coderabbitai bot mentioned this pull request Jan 30, 2026
27 tasks
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.

2 participants