Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Introduction & Quickstart Page Styling#457

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 ourterms of service andprivacy statement. We’ll occasionally send you account related emails.

Already on GitHub?Sign in to your account

Open
PrasadBhat4 wants to merge9 commits intocoderabbitai:main
base:main
Choose a base branch
Loading
fromPrasadBhat4:PrasadBhat4/docs-layout-improvements

Conversation

PrasadBhat4
Copy link

🎨 Enhanced UI/UX: Quickstart & Introduction Page Styling

📋 Overview

This PR introduces styling improvements to the quick start and introduction pages, enhancing readability and visual appeal with new reusable components.

🔗 Related Issues

✨ Key Changes

🎨 Enhanced Quickstart Page Styling

  • Improved visual hierarchy with better spacing and typography
  • Added styled components for better content presentation
  • Enhanced code block styling with dark theme support
  • Better mobile responsiveness and user experience

📖 Improved Introduction Page Design

  • Redesigned layout with new styling approach
  • Enhanced content readability with improved typography
  • Better visual flow and component organization
  • Consistent styling patterns throughout the page

🧩 New Reusable Components

  • DarkCodeBlock: Enhanced code blocks with improved syntax highlighting
  • Note: Styled informational components with theme-aware colors
  • ChatBubble: Interactive chat examples with proper styling
  • All components designed for consistency and reusability

🎨 Visual Improvements

  • Enhanced CSS custom properties for better theming
  • Improved spacing and layout consistency
  • Better color scheme and contrast ratios
  • Mobile-optimized responsive design

📱 Better User Experience

  • Cleaner, more modern appearance
  • Improved readability and content flow
  • Enhanced accessibility features
  • Consistent styling across documentation

Screenshots

  1. Introduction Page
SCR-20250716-nczo
  1. Quick Start Page
SCR-20250716-ndic

@PrasadBhat4PrasadBhat4 requested a review froma team as acode ownerJuly 16, 2025 09:28
@coderabbitaicoderabbitai
Copy link
Contributor

coderabbitaibot commentedJul 16, 2025
edited
Loading

Caution

Review failed

Failed to post review comments.

Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between8c835f9 andde79b5b.

⛔ Files ignored due to path filters (7)
  • static/img/Icons/Icons.png is excluded by!**/*.png,!**/*.png
  • static/img/overview/Azure.png is excluded by!**/*.png,!**/*.png
  • static/img/overview/Bitbucket.png is excluded by!**/*.png,!**/*.png
  • static/img/overview/Github.png is excluded by!**/*.png,!**/*.png
  • static/img/overview/Gitlab.png is excluded by!**/*.png,!**/*.png
  • static/img/overview/Jira.png is excluded by!**/*.png,!**/*.png
  • static/img/overview/Linear.png is excluded by!**/*.png,!**/*.png
📒 Files selected for processing (27)
  • docs/getting-started/quickstart.md (0 hunks)
  • docs/getting-started/quickstart.mdx (1 hunks)
  • docs/overview/introduction.mdx (3 hunks)
  • docusaurus.config.ts (1 hunks)
  • src/components/ChatBubble/ChatBubble.module.css (1 hunks)
  • src/components/ChatBubble/ChatBubble.tsx (1 hunks)
  • src/components/ChatBubble/index.ts (1 hunks)
  • src/components/DarkCodeBlock/DarkCodeBlock.module.css (1 hunks)
  • src/components/DarkCodeBlock/DarkCodeBlock.tsx (1 hunks)
  • src/components/DarkCodeBlock/index.ts (1 hunks)
  • src/components/InfoBox/InfoBox.module.css (1 hunks)
  • src/components/InfoBox/InfoBox.tsx (1 hunks)
  • src/components/InfoBox/index.ts (1 hunks)
  • src/components/ListItems/ListItems.module.css (1 hunks)
  • src/components/ListItems/ListItems.tsx (1 hunks)
  • src/components/ListItems/index.ts (1 hunks)
  • src/components/Note/Note.module.css (1 hunks)
  • src/components/Note/Note.tsx (1 hunks)
  • src/components/Note/index.ts (1 hunks)
  • src/components/OrderedSteps.tsx (1 hunks)
  • src/components/PlatformCard/PlatformCard.module.css (1 hunks)
  • src/components/PlatformCard/PlatformCard.tsx (1 hunks)
  • src/components/PlatformCard/index.ts (1 hunks)
  • src/components/PlatformGrid/PlatformGrid.module.css (1 hunks)
  • src/components/PlatformGrid/PlatformGrid.tsx (1 hunks)
  • src/components/PlatformGrid/index.ts (1 hunks)
  • src/css/custom.css (6 hunks)
💤 Files with no reviewable changes (1)
  • docs/getting-started/quickstart.md
🧰 Additional context used
🧠 Learnings (4)
📓 Common learnings
Learnt from: aravindputrevuPR: coderabbitai/coderabbit-docs#115File: docs/about/features.md:72-72Timestamp: 2024-10-24T10:08:27.858ZLearning: In documentation files, ensure all markdown image tags follow SEO guidelines and maintain consistency across Docs Pull Requests.
src/css/custom.css (3)
Learnt from: tyaga001PR: coderabbitai/coderabbit-docs#129File: docs/platforms/azure-devops.md:33-36Timestamp: 2024-11-05T11:02:34.674ZLearning: In markdown files, when images or other content are placed between list items, the ordered list numbering may not appear sequential, and this is acceptable. Avoid flagging non-sequential list numbering in such cases.
Learnt from: jmacdotorgPR: coderabbitai/coderabbit-docs#0File: :0-0Timestamp: 2025-04-16T21:25:12.333ZLearning: When reviewing Markdown documents, using `1.` for all items in an ordered list is a valid and common practice. The rendered HTML will automatically show sequential numbers, and this approach makes maintenance easier when items need to be reordered.
Learnt from: jmacdotorgPR: coderabbitai/coderabbit-docs#0File: :0-0Timestamp: 2025-04-16T21:25:12.333ZLearning: When reviewing Markdown documents, using `1.` for all items in an ordered list is a valid and common practice. The rendered HTML will automatically show sequential numbers, and this approach makes maintenance easier when items need to be reordered.
docs/overview/introduction.mdx (4)
Learnt from: alexcoderabbitaiPR: coderabbitai/coderabbit-docs#0File: :0-0Timestamp: 2025-06-02T14:07:49.512ZLearning: For files in docs/tools/*.md directory: Do not recommend installation instructions or usage setup steps. All tools documented in this directory are pre-installed in CodeRabbit's default environment and require no installation steps from users. Documentation should focus on tool capabilities and features only.
Learnt from: aravindputrevuPR: coderabbitai/coderabbit-docs#121File: docs/guides/delete-account.md:46-47Timestamp: 2024-10-31T16:33:25.070ZLearning: In the CodeRabbit documentation, image paths in markdown files should reference the `/img/` directory, not `/static/img/`.
Learnt from: aravindputrevuPR: coderabbitai/coderabbit-docs#402File: docs/guides/setup-best-practices.md:21-21Timestamp: 2025-06-18T09:22:07.198ZLearning: The word "CodeRabbit" should always have both C and R capitalized (not "coderabbit", "Coderabbit", or "CoderabbitAI"). The correct format is "CodeRabbit" and "CodeRabbitAI" for the service account. Proactively correct this capitalization in review comments when contributors mistype it.
Learnt from: NatoBoramPR: coderabbitai/coderabbit-docs#155File: docs/overview/why-coderabbit.md:19-19Timestamp: 2024-12-03T16:46:32.741ZLearning: The phrasing "CodeRabbit currently processes over X pull requests across multiple languages including..." is acceptable.
docs/getting-started/quickstart.mdx (1)
Learnt from: alexcoderabbitaiPR: coderabbitai/coderabbit-docs#0File: :0-0Timestamp: 2025-06-02T14:07:49.512ZLearning: For files in docs/tools/*.md directory: Do not recommend installation instructions or usage setup steps. All tools documented in this directory are pre-installed in CodeRabbit's default environment and require no installation steps from users. Documentation should focus on tool capabilities and features only.
🧬 Code Graph Analysis (1)
src/components/PlatformCard/PlatformCard.tsx (1)
src/components/PlatformCard/index.ts (1)
  • PlatformCard (1-1)
🪛 LanguageTool
docs/overview/introduction.mdx

[style] ~131-~131: Consider removing “of” to be more concise
Context: ...r of CodeRabbit at no charge, including all of the code-review features described on this ...

(ALL_OF_THE)

docs/getting-started/quickstart.mdx

[style] ~136-~136: Consider using a different verb to strengthen your wording.
Context: ...g-started/quickstart-comment.png) This shows that CodeRabbit has noticed some flaws ...

(SHOW_INDICATE)

🪛 Biome (1.9.4)
src/components/DarkCodeBlock/DarkCodeBlock.tsx

[error] 125-125: Useless case clause.

because the default clause is present:

Unsafe fix: Remove the useless case.

(lint/complexity/noUselessSwitchCase)


[error] 126-126: Useless case clause.

because the default clause is present:

Unsafe fix: Remove the useless case.

(lint/complexity/noUselessSwitchCase)


[error] 127-127: Useless case clause.

because the default clause is present:

Unsafe fix: Remove the useless case.

(lint/complexity/noUselessSwitchCase)


[error] 135-135: Avoid passing content using the dangerouslySetInnerHTML prop.

Setting content using code can expose users to cross-site scripting (XSS) attacks

(lint/security/noDangerouslySetInnerHtml)

🔇 Additional comments (17)
src/components/ChatBubble/ChatBubble.module.css (1)

1-11:Verify color-contrast of theme variables
.chatBubble relies on--imf-text-button-color-bg /--imf-text-color. Ensure the chosen pair meets WCAG AA contrast (≥ 4.5:1 for normal text).

src/components/Note/index.ts (1)

1-1:LGTM – pragmatic re-export
Re-export keeps import paths clean. No issues spotted.

docusaurus.config.ts (1)

275-278:Confirm theme choice works for light mode
UsingnightOwl for boththeme anddarkTheme means the light theme will also be dark-styled. Double-check that this matches design intent; otherwise keepnightOwl only fordarkTheme and a light-appropriate theme (e.g.,github) fortheme.

src/components/InfoBox/index.ts (1)

1-1:Verify thatInfoBox is actually exported from./InfoBox.

If the component file only has a default export, consumers importing the namedInfoBox will hit a compile-time error.
Run a quick search or addexport const InfoBox = … insideInfoBox.tsx if it’s missing.

src/components/PlatformCard/index.ts (1)

1-1:Re-export syntax could surprise some bundlers

export { PlatformCard, default } from "./PlatformCard" is valid ES syntax, but certain tooling (older Rollup / TS configs) trips over the anonymousdefault re-export. The safer, widely-supported pattern is:

-export { PlatformCard, default } from "./PlatformCard"+export { default as PlatformCard } from "./PlatformCard"+export * from "./PlatformCard"
src/components/ListItems/ListItems.module.css (1)

44-54:Accessibility: hide decorative bullets from screen readers

Because the semantic list style is removed, the pseudo-element bullet should havearia-hidden to prevent double reading by assistive tech. This requires a tiny tweak in the React component (<li aria-hidden />) not in CSS, so verifyListItems.tsx setsrole="listitem" properly or adds::before witharia-hidden="true" via attribute selectors.
Please cross-check.

src/components/DarkCodeBlock/DarkCodeBlock.module.css (1)

1-131:Well-structured CSS module with comprehensive dark theme styling.

The CSS module provides excellent styling for the dark code block component with:

  • Consistent color scheme and typography
  • Proper responsive design adjustments
  • Well-organized syntax highlighting colors
  • Smooth interactive transitions for the copy button

The implementation follows CSS module best practices and provides a polished user experience.

docs/overview/introduction.mdx (3)

12-15:Excellent migration to React components for improved consistency.

The introduction of reusable components (ListItems,InfoBox,PlatformGrid,PlatformCard) enhances the documentation structure and maintainability. This approach provides better visual consistency across the documentation.


40-51:Great use of ListItems component for structured content.

The conversion from markdown list to theListItems component provides better styling control and consistency. The features are well-organized and clearly presented.


77-91:Excellent platform grid implementation with proper image paths.

ThePlatformGrid andPlatformCard components provide a much more visually appealing way to display supported platforms. The image paths correctly reference the/img/ directory as per documentation standards.

src/css/custom.css (4)

44-54:Well-designed CSS custom properties for theming.

The new--imf- prefixed CSS variables provide a comprehensive theming system for the new UI components. The variable names are descriptive and the color choices are appropriate for both light and dark themes.


68-77:Consistent dark theme implementation.

The dark theme variables maintain proper contrast ratios and provide a cohesive visual experience. The color choices complement the overall design system.


310-320:Good styling for text language elements.

The new styles for.language-text elements ensure consistent theming across code blocks and provide proper styling for interactive elements like buttons.


354-367:Improved content alignment and spacing.

The updated padding and margin adjustments for markdown content and ordered lists enhance readability and provide better visual hierarchy.

src/components/ListItems/ListItems.tsx (2)

4-8:Well-defined TypeScript interface.

The component interface is clear and provides good flexibility by acceptingReact.ReactNode[] for items, allowing for rich content including JSX elements.


10-29:Clean and flexible component implementation.

The component elegantly handles both ordered and unordered lists through theorderedList prop and applies appropriate CSS classes. The dynamic list tag selection and proper key usage for list items demonstrate good React practices.

src/components/DarkCodeBlock/DarkCodeBlock.tsx (1)

17-25:Good clipboard functionality implementation.

The async clipboard handling with proper error handling and user feedback is well-implemented. The 2-second timeout for the "Copied!" state provides good UX.

Walkthrough

This update introduces several new React components and CSS modules to enhance documentation presentation, including custom-styled lists, info boxes, chat bubbles, code blocks, notes, and platform grids/cards. The Quickstart guide is rewritten using these components. The introduction page is refactored for improved structure, and syntax highlighting themes are unified. Custom CSS variables and responsive styles are added.

Changes

File(s)Change Summary
docs/getting-started/quickstart.mdRemoved legacy Quickstart markdown tutorial.
docs/getting-started/quickstart.mdxAdded rewritten Quickstart tutorial using new React components for formatting and interactivity.
docs/overview/introduction.mdxRefactored introduction to use custom React components for lists, info boxes, and platform grids/cards.
docusaurus.config.tsUpdated Prism syntax highlighting themes to "nightOwl" for both light and dark modes.
src/components/ChatBubble/ChatBubble.module.css, ChatBubble.tsx, index.tsAdded new ChatBubble component with CSS module and barrel export.
src/components/DarkCodeBlock/DarkCodeBlock.module.css, DarkCodeBlock.tsx, index.tsAdded new DarkCodeBlock component for syntax-highlighted code blocks, with CSS module and barrel export.
src/components/InfoBox/InfoBox.module.css, InfoBox.tsx, index.tsAdded InfoBox component with styling and index re-exports.
src/components/ListItems/ListItems.module.css, ListItems.tsx, index.tsIntroduced ListItems component for styled ordered/unordered lists with CSS and index re-exports.
src/components/Note/Note.module.css, Note.tsx, index.tsAdded Note component with CSS styling and index re-export.
src/components/OrderedSteps.tsxIntroduced OrderedSteps component for rendering ordered lists of steps.
src/components/PlatformCard/PlatformCard.module.css, PlatformCard.tsx, index.tsAdded PlatformCard component with CSS module and index re-exports.
src/components/PlatformGrid/PlatformGrid.module.css, PlatformGrid.tsx, index.tsAdded PlatformGrid component for grid layout of platform cards, with CSS and index re-exports.
src/css/custom.cssAdded and reorganized CSS variables, styles for new components, and improved responsive design.

Sequence Diagram(s)

sequenceDiagram    participant User    participant DocsSite    participant ReactComponents    User->>DocsSite: Navigates to Quickstart or Introduction    DocsSite->>ReactComponents: Renders ListItems, InfoBox, ChatBubble, etc.    ReactComponents-->>User: Displays interactive, styled documentation    User->>DocsSite: Interacts (e.g., copies code, reads notes)    DocsSite->>ReactComponents: Handles UI feedback (e.g., "Copied!" state)
Loading

Poem

A rabbit hopped through docs anew,
With bubbles, notes, and code in view.
Cards and grids now line the way,
Steps and lists in bright array.
"Copy code!" the bunny cried,
In nightOwl hues, the styles applied.
Quickstart fresh, let's leap inside! 🐇✨

Impact Analysis

Improved Quickstart Tutorial with Enhanced Formatting and Interactivity

📢 Medium 🔄 Impacts behavior

The Quickstart guide for CodeRabbit has been replaced with a new, more interactive tutorial that uses custom components for clearer formatting, step-by-step instructions, and richer examples. Users will experience a more visually engaging and easier-to-follow onboarding process, including formatted lists, chat bubbles for example conversations, code blocks with syntax highlighting and copy functionality, and highlighted information boxes.

Test the Quickstart guide end-to-end as a new user, verifying that all steps are clear and actionable. Check that all custom components display and function as intended across devices and themes, and that users can easily follow the integration and review workflows.

🔍 Related Files
  • docs/getting-started/quickstart.md
  • docs/getting-started/quickstart.mdx
  • src/components/ChatBubble/ChatBubble.module.css
  • src/components/ChatBubble/ChatBubble.tsx
  • src/components/ChatBubble/index.ts
  • src/components/DarkCodeBlock/DarkCodeBlock.module.css
  • src/components/DarkCodeBlock/DarkCodeBlock.tsx
  • src/components/DarkCodeBlock/index.ts
  • src/components/InfoBox/InfoBox.module.css
  • src/components/InfoBox/InfoBox.tsx
  • src/components/InfoBox/index.ts
  • src/components/ListItems/ListItems.module.css
  • src/components/ListItems/ListItems.tsx
  • src/components/ListItems/index.ts
  • src/components/Note/Note.module.css
  • src/components/Note/Note.tsx
  • src/components/Note/index.ts
  • src/components/OrderedSteps.tsx
  • src/components/PlatformCard/PlatformCard.module.css
  • src/components/PlatformCard/PlatformCard.tsx
  • src/components/PlatformCard/index.ts
  • src/components/PlatformGrid/PlatformGrid.module.css
  • src/components/PlatformGrid/PlatformGrid.tsx
  • src/components/PlatformGrid/index.ts
  • src/css/custom.css

Enhanced Introduction Page with Visual Components and Improved Layout

ℹ️ Low 🔄 Impacts behavior

The introduction page now uses custom React components for lists, platform grids, and info boxes, resulting in a more visually appealing and organized presentation of CodeRabbit's features, supported platforms, and informational content. Users will notice improved readability and a more modern look and feel.

Verify the introduction page on different devices and themes, ensuring all lists, grids, and info boxes display correctly and are accessible. Confirm that navigation and links function as expected.

🔍 Related Files
  • docs/overview/introduction.mdx
  • src/components/ListItems/ListItems.module.css
  • src/components/ListItems/ListItems.tsx
  • src/components/ListItems/index.ts
  • src/components/PlatformCard/PlatformCard.module.css
  • src/components/PlatformCard/PlatformCard.tsx
  • src/components/PlatformCard/index.ts
  • src/components/PlatformGrid/PlatformGrid.module.css
  • src/components/PlatformGrid/PlatformGrid.tsx
  • src/components/PlatformGrid/index.ts
  • src/components/InfoBox/InfoBox.module.css
  • src/components/InfoBox/InfoBox.tsx
  • src/components/InfoBox/index.ts

Unified Syntax Highlighting Theme for Code Blocks

ℹ️ Low 🔄 Impacts behavior

The syntax highlighting theme for code blocks in the documentation site has been changed to "nightOwl" for both light and dark modes, providing a consistent and modern appearance for code samples regardless of the selected theme.

Check code blocks in various documentation pages under both light and dark themes to confirm correct syntax highlighting and visual consistency.

🔍 Related Files
  • docusaurus.config.ts

Improved Documentation Styling and Mobile Layout Adjustments

ℹ️ Low 🔄 Impacts behavior

Custom CSS variables and new styles have been introduced for documentation elements such as lists, notes, code blocks, and buttons, resulting in a more cohesive and visually appealing user experience. Mobile layout and spacing have also been improved for better readability on smaller screens.

Test documentation pages on various devices and screen sizes, verifying that all styled elements render correctly and that mobile usability is improved.

🔍 Related Files
  • src/css/custom.css

Warning

Review ran into problems

🔥 Problems

Errors were encountered while retrieving linked issues.

Errors (1)
  • SCR-20250716: Entity not found: Issue - Could not find referenced Issue.
✨ Finishing Touches
  • 📝 Generate Docstrings
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment

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

  • 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 oursupport 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 togenerate docstrings for this PR.
  • @coderabbitai generate sequence diagram to generate a sequence diagram of the changes in this PR.
  • @coderabbitai auto-generate unit tests to generate unit tests for 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.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a.coderabbit.yaml file to the root of your repository.
  • Please see theconfiguration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation:# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit ourDocumentation for detailed information on how to use CodeRabbit.
  • Join ourDiscord Community to get help, request features, and share feedback.
  • Follow us onX/Twitter for updates and announcements.

@jmacdotorgjmacdotorg self-requested a reviewJuly 18, 2025 16:14
Copy link
Contributor

@jmacdotorgjmacdotorg left a comment

Choose a reason for hiding this comment

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

Hi folks,

Thanks for this work. While I appreciate the design improvements already merged with#432 and the goals laid out with#438, I have some reservations about the changes proposed here.

The significant modifications to the pages' source—and the implied changes that they would require to all existing and future documentation—make me feel concerned about the trade-offs involved. I expect that we can find other paths to meeting the design goals of#438, ones that involve a much lighter touch to our source files.

Added source complexity

First and foremost, I see that this PR replaces some Markdown source files with MDX files, which allow React code to be added directly to the page source. While this does bring a lot of potential flexibility to the documentation source, it carries a significant cost in maintainability by weakening the separation between content and presentation.

Unnecessary change of source file types

The codebase already does support calling out to React-based components as needed, by way of themdx-code-block directive. That, I think, obviates the need to recast entire Markdown source files to MDX.

Increased developer friction and maintainability costs

Currently, writers need only know Markdown to improve or author product documentation. This change proposes to instead require that writers learn a Markdown/React/HTML hybrid, including components that are unique to this documentation set. This would add a lot of friction to future documentation maintenance, to say nothing of development.

We'd also have to separately document and maintain these new React components, indefinitely.

Decreased content/presentation separation

In particular, I question adding new React components for common documentation elements like lists, notes, and code blocks, all of which are already well-supported by basic Docusaurus-flavored Markdown, and all of which can be styled through CSS.

What does adding a new<ListItems> component give us, which using ordinary CSS to style<ul> elements can't do?

Added visual complexity

I'd like to know more about the motivation to place various types of content—such as lists and cross-references—inside of colored boxes, rather than allowing them to exist as body text.

This includes the proposal to turn lists of Git platforms into two-dimensional matrices, implying that the position of the elements in different rows and columns carries some sort of special meaning, even though there is only one dimension of data.

Research shows thatreaders tend to skip over "callout" boxes when they're mixed in with body text. These elements are best used sparingly, for either warning labels that are supported by adjacent body text, or for asides that contain interesting but skippable notes.

My concern is that by transforming a lot of naturally body-text elements into colored banners, you'd actually be making the page significantly harder to read and navigate.

Book versus brochure

I suspect that we might have different audiences in mind for this material? A lot of these design elements strike me as more appropriate to "pre-sale" product-marketing pages or blog posts, and not developer documentation.

The readers of these docs don't need their attention grabbed by stacks of info-boxes, or comforted by the presence of familiar brand logos. Instead, they're visiting these pages with the goal of completing a task, and in all likelihood have arrived here with focused intent. The less visual and cognitive friction we present these readers with, the better.

That is, the docs should look more like a book than a brochure.

My request

Here's what I'd like to see next for this PR:

  • Leave the pages as Markdown files.

  • Don't introduce React replacements for elements that Docusaurus Markdown already supports.

  • As much as possible, restyle elements with CSS alone. If you can't use CSS alone and really must introduce new react components, usemdx-code-block sections, exactly as these docs already do.

  • Let body text be body text. Don't introduce boxes, banners or other breaks to the flow of reading. Authors can carefully insert flow-breaking elements when they need to, sparingly, throughDocusaurus admonitions markup and other techniques.

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

@jmacdotorgjmacdotorgjmacdotorg requested changes

@bar0meterbar0meterAwaiting requested review from bar0meterbar0meter is a code owner automatically assigned from coderabbitai/typescript-reviewers

@karan925karan925Awaiting requested review from karan925karan925 is a code owner automatically assigned from coderabbitai/typescript-reviewers

Requested changes must be addressed to merge this pull request.

Assignees
No one assigned
Labels
None yet
Projects
None yet
Milestone
No milestone
Development

Successfully merging this pull request may close these issues.

3 participants
@PrasadBhat4@jmacdotorg@mohd-khan09

[8]ページ先頭

©2009-2025 Movatter.jp