From 4463cefe93c13b0869e368b843c5ed0dd52efe1d Mon Sep 17 00:00:00 2001 From: Ankur Tyagi Date: Fri, 20 Dec 2024 13:37:38 +0100 Subject: [PATCH 1/3] docs: enhance why coderabbit page --- docs/overview/why-coderabbit.md | 432 +++++++++++++++++++++++++++++--- 1 file changed, 402 insertions(+), 30 deletions(-) diff --git a/docs/overview/why-coderabbit.md b/docs/overview/why-coderabbit.md index ccad9f89..6077e997 100644 --- a/docs/overview/why-coderabbit.md +++ b/docs/overview/why-coderabbit.md @@ -6,61 +6,433 @@ sidebar_position: 2 description: CodeRabbit is AI-powered code reviews built for modern development teams --- -As developers, we understand the critical value of code reviews - they're the backbone of maintaining code quality and knowledge sharing across teams. But let's be honest about the growing challenges: as codebases expand and development velocity increases, traditional code reviews often become a bottleneck. This is where CodeRabbit comes in, not to replace human reviewers, but to make their work more impactful and helpful. +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; -### Deep Understanding, Immediate Insights +# Why CodeRabbit? -Think about how you approach reviewing a complex pull request. You first try to understand the context, examine potential edge cases, and consider architectural implications. CodeRabbit performs this same thoughtful analysis, but delivers insights within minutes of PR submission. +Looking back at CodeRabbit's journey, our fundamental reasons remain unchanged: -For example, when examining a change to your authentication system, CodeRabbit doesn't just flag syntax issues - it analyzes the entire authentication flow, identifying potential security vulnerabilities in token handling or session management specific to your implementation: +1. **To build the best code review experience in the tech** + +> This continues to be our core mission. It was clear to us then, as it is now, that development workflows are becoming increasingly complex — and teams need intelligent automation to maintain quality while moving fast. + +2. **In an ever-evolving tech space, we believe AI-powered code review is the future** + +> Just like Git revolutionized version control and CI/CD transformed deployments, we believe AI-assisted code review will become the standard for quality assurance. + +3. **An insight that modern code review can be reimagined** + +We call this approach _contextual analysis_, which allows us to understand not just the code changes, but their implications across your entire codebase. This enables us to provide insights about: + +- Security vulnerabilities +- Performance impacts +- Architectural changes +- Best practices +- Knowledge sharing + +4. **The conviction that our AI can provide a better Developer Experience (DevX)** + +Features such as: + +- Instant analysis +- On-demand Reports +- Review Instructions +- CodeRabbit Commands +- PR summary on the fly +- Visual diagrams +- Docstrings (Beta) +- Custom review rules + +> All these features improve the developer experience by reducing review time, maintaining consistency, and sharing knowledge effectively across teams. + +These are CodeRabbit's foundational principles, but given the many _code review tools_ available today, let's explore why **you** should choose CodeRabbit: + +--- + +# CodeRabbit is AI-Powered + +Your intelligent code review companion that understands context. + +> From its foundation as a Generative AI-first platform, CodeRabbit has evolved to become the preferred code review tool among developers because of its speed, intelligence, adaptability, and support for features like contextual analysis, security scanning, and architectural insights. CodeRabbit supports all major programming languages and integrates with popular development [tools](/tools). + +:::info Get Started +If your team needs intelligent code reviews, CodeRabbit delivers. If you're new to AI-powered reviews, [sign up for a Free account](https://app.coderabbit.ai/login), join the [Discord server](https://discord.gg/coderabbit), and start the journey with us. +::: + +## CodeRabbit is Context-Aware + +An AI architecture built for understanding, reliability, and efficiency + +
+
+
+
+

Intelligent Features

+
+
+
    +
  • Instant code understanding
  • +
  • Security vulnerability detection
  • +
  • Performance impact assessment
  • +
  • Architecture evaluation
  • +
+
+
+
+
+
+
+

Context Analysis

+
+
+ Understanding context means analyzing how code changes affect the entire system, not just the modified files. This approach contrasts with traditional code review tools that only look at direct changes. +
+
+
+
![CodeRabbit Review comment on a Auth Flow](/img/about/why-cr-auth-flow-cors.png "CodeRabbit Code Review Comment") -### Intelligence Through Integration +:::tip DID YOU KNOW? +CodeRabbit's AI can detect potential issues that would only surface in production, saving costly debugging time later. +::: + +## CodeRabbit is Adaptive + +Let the AI learn and grow with your team. + +Being an adaptive system means that CodeRabbit continuously learns from your team's practices and preferences without requiring manual configuration or rule setting. When reviewers accept or reject suggestions, CodeRabbit learns and applies these preferences to future reviews. + +### Real-World Example: Performance Optimization -CodeRabbit combines the specialized insights of over 20 analysis tools (ESLint, Semgrep, Checkov, and more) with AI understanding to provide meaningful, actionable feedback. But instead of drowning you in alerts, it provides curated, context-aware suggestions. +Here's a real example of how CodeRabbit identifies opportunities for performance improvement: -### Learning Your Team's DNA + + + ```typescript + const createdTools = await Promise.all( + tools.map(async (tool) => { + return prisma.tool.create({ + data: { + name: tool.name, + description: tool.description, + headline: tool.headline, + features: tool.features, + logo: tool.name, + categories: tool.categories || [], + tags: tool.tags || [], + stars: tool.stars || 0, + forks: tool.forks || 0, + lastUpdated: new Date(), + websiteUrl: tool.websiteUrl, + githubUrl: tool?.githubUrl, + documentation: tool?.documentation + }, + }); + }) + ); + ``` + + + ```typescript + const createdTools = await prisma.tool.createMany({ + data: tools.map((tool) => ({ + name: tool.name, + description: tool.description, + headline: tool.headline, + features: tool.features, + logo: tool.name, + categories: tool.categories || [], + tags: tool.tags || [], + stars: tool.stars || 0, + forks: tool.forks || 0, + lastUpdated: new Date(), + websiteUrl: tool.websiteUrl, + githubUrl: tool?.githubUrl, + documentation: tool?.documentation + })) + }); + ``` + + -What makes CodeRabbit truly valuable is its ability to learn and adapt to your team's codebase, practices, and standards. It doesn't just pattern match - it builds a deep understanding through direct interactions with your team. For example, when a reviewer indicates a preference: +:::note CodeRabbit's Analysis +The current implementation processes each tool creation sequentially. Consider using Prisma's `createMany` for better performance. This batch operation can significantly reduce database round trips and improve overall execution time. + +
+ + View Example PR + +
+::: + +### How CodeRabbit Adapts + +When suggesting improvements, CodeRabbit: + +
+
+
+
+

Analyzes Patterns

+
+
+
    +
  • Identifies common performance bottlenecks
  • +
  • Learns from your codebase's patterns
  • +
  • Suggests modern best practices
  • +
+
+
+
+
+
+
+

Provides Context

+
+
+
    +
  • Explains the reasoning behind suggestions
  • +
  • Highlights potential benefits
  • +
  • Offers committable suggestions
  • +
+
+
+
+
![CodeRabbit Learnings](/img/about/why-cr-learnings.png "How CodeRabbit learns and remembers org standards") -CodeRabbit will then: +:::tip Learning from Feedback +When you accept or reject these suggestions, CodeRabbit learns your team's preferences and adjusts future recommendations accordingly. This ensures that suggestions become increasingly relevant to your specific needs and coding standards. +::: + +## CodeRabbit is Integrated + +Seamless integration with your existing workflow. + +CodeRabbit combines insights from multiple specialized tools into a single, coherent review: + +
+
+
+
+

Security

+
+
+ Semgrep, Checkov +
+
+
+
+
+
+

Style

+
+
+ ESLint, Prettier +
+
+
+
+
+
+

Performance

+
+
+ Lighthouse +
+
+
+
+
+
+

Dependencies

+
+
+ Dependabot +
+
+
+
+ +But instead of flooding you with alerts, CodeRabbit provides curated, actionable feedback. + +## Tool Comparison -- Remember this preference for future reviews -- Apply this knowledge across the entire codebase -- Share this learning with the whole team through its review comments -- Maintain consistency with your established standards + + +- ✅ Most comprehensive and detailed code analysis +- ✅ Committable Suggestion +- ✅ Context-aware feedback +- ✅ Adaptive learning +- ✅ Strong data protection policies +- ✅ Chat capabilities with detailed explanations + + +- ❌ Provides basic data protection +- ❌ Conflicting suggestions +- ❌ No context awareness +- ❌ No detailed analysis +- ❌ Least transparent privacy +- ❌ Limited chat interaction +- ❌ Lacks actionable code suggestions + + -### Practical Impact on Your Workflow +## Impact on Your Workflow -When a developer opens a pull request, CodeRabbit: +When a developer opens a pull request, CodeRabbit comes into action: + +
+
+
+
+

Immediate Analysis

+
+
+
    +
  • Scans changed files and dependencies
  • +
  • Identifies security vulnerabilities
  • +
  • Evaluates performance impact
  • +
  • Checks architectural consistency
  • +
+
+
+
+
+
+
+

Communication

+
+
+
    +
  • Generates concise summary
  • +
  • Creates visual diagrams
  • +
  • Generates a changelist and walkthrough
  • +
  • Chat option
  • +
+
+
+
+
+
+
+

Continuous Learning

+
+
+
    +
  • Remembers team preferences
  • +
  • Adapts to coding patterns
  • +
  • Shares knowledge across teams
  • +
  • Maintains consistent standards
  • +
+
+
+
+
+ +:::note ENTERPRISE READY +CodeRabbit is built for production environments with: + +- SOC 2 Type II certification +- GDPR compliance +- Zero data retention +- Self-hosted options + ::: + +## Start Reviewing Code in Seconds + +> CodeRabbit makes it effortless to begin AI-powered code reviews. Our architecture enables instant setup and immediate code analysis, providing you with intelligent feedback within minutes. + +### Three Steps to Better Code Reviews + +1. **Sign in** with [GitHub](/platforms/github-com), [GitLab](/platforms/gitlab-com), or [Azure DevOps](/platforms/azure-devops) +2. Select and add a repositories in CodeRabbit dashboard +3. That's it. You're good to go. + +:::tip INSTANT ACTIVATION +CodeRabbit starts analyzing your first pull request immediately - no complex configuration needed. +::: + +### What You'll Get + +
+
+
+
+

Immediate Benefits

+
+
+ - Instant PR analysis + - Security checks + - Style enforcement + - Performance insights +
+
+
+
+
+
+

Team Features

+
+
+ - Custom review rules + - Team preferences + - Knowledge sharing + - Workflow integration +
+
+
+
+
+
+

Advanced Tools

+
+
+ - Visual diagrams + - Impact analysis + - Batch suggestions + - Pattern detection +
+
+
+
-- Analyzes changes across the entire codebase context -- Generates a clear, actionable summary -- Creates visual sequence diagrams for complex changes -- Provides specific feedback and suggestions +### Quick Configuration Examples -This means human reviewers can focus on architectural decisions and knowledge sharing, rather than catching basic issues. + + + ```bash + # Example GitHub Reviews + https://github.com/appsmithorg/appsmith/pull/38270 + https://github.com/tyaga001/devtoolsacademy/pull/44 + https://github.com/openreplay/openreplay/pull/1858 -### Built for Production Teams + # Browse All Reviews + https://github.com/search?q=coderabbitai&type=pullrequests + ``` -For teams building production software, CodeRabbit provides: + + -- SOC 2 Type II and GDPR compliance for enterprise security requirements -- Self-hosted deployment options for complete control -- Zero data retention policy - code is analyzed in memory and immediately discarded +:::note SUPPORT AT EVERY STEP +Need help? read [quickstart](/getting-started/quickstart) or ask a question in [Discord community](https://discord.gg/coderabbit), and team is here to help. +::: -Want to see the impact yourself? Try CodeRabbit on your next complex refactoring PR - you might be surprised at the subtle implications it catches that could easily be missed in manual review. +## See the Difference -## Not convinced? Read more +Try CodeRabbit on your next pull request. Experience how AI-powered code review can: -You can read more about our custom [code review instructions](/guides/review-instructions) or how we verify issues using [knowledge bases](/integrations/knowledge-base) like Linear and Jira. +- Reduce review time by up to 90% +- Catch bugs before they reach production +- Share knowledge across your team +- Maintain consistent code quality -Join thousands of developers who are already benefiting from AI-powered code reviews. +> Start reading more about the custom [code review instructions](/guides/review-instructions) or how CodeRabbit verify issues using [knowledge bases](/integrations/knowledge-base) like Linear and Jira. -After signing up, join our active Discord community where you'll find CodeRabbit users and team members ready to help you get the most out of your code reviews. +Transform your code reviews now, [Start your free trial today](https://app.coderabbit.ai/login) and join the Discord server and chat with CodeRabbit users and team.
Sign Up Free From 5e4976ee6817d9a8e116543aa2c89a2e33fa0c58 Mon Sep 17 00:00:00 2001 From: Ankur Tyagi Date: Fri, 20 Dec 2024 14:14:16 +0100 Subject: [PATCH 2/3] docs: enhance why coderabbit page --- docs/overview/why-coderabbit.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/overview/why-coderabbit.md b/docs/overview/why-coderabbit.md index 6077e997..28fd49da 100644 --- a/docs/overview/why-coderabbit.md +++ b/docs/overview/why-coderabbit.md @@ -13,15 +13,15 @@ import TabItem from '@theme/TabItem'; Looking back at CodeRabbit's journey, our fundamental reasons remain unchanged: -1. **To build the best code review experience in the tech** +- **To build the best code review experience in the tech** > This continues to be our core mission. It was clear to us then, as it is now, that development workflows are becoming increasingly complex — and teams need intelligent automation to maintain quality while moving fast. -2. **In an ever-evolving tech space, we believe AI-powered code review is the future** +- **In an ever-evolving tech space, we believe AI-powered code review is the future** > Just like Git revolutionized version control and CI/CD transformed deployments, we believe AI-assisted code review will become the standard for quality assurance. -3. **An insight that modern code review can be reimagined** +- **An insight that modern code review can be reimagined** We call this approach _contextual analysis_, which allows us to understand not just the code changes, but their implications across your entire codebase. This enables us to provide insights about: @@ -31,7 +31,7 @@ We call this approach _contextual analysis_, which allows us to understand not j - Best practices - Knowledge sharing -4. **The conviction that our AI can provide a better Developer Experience (DevX)** +- **The conviction that our AI can provide a better Developer Experience (DevX)** Features such as: From 4bb45531c87006b55e19f094b082fec562d2217e Mon Sep 17 00:00:00 2001 From: Ankur Tyagi Date: Fri, 20 Dec 2024 14:33:15 +0100 Subject: [PATCH 3/3] Update docs/overview/why-coderabbit.md Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- docs/overview/why-coderabbit.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/overview/why-coderabbit.md b/docs/overview/why-coderabbit.md index 28fd49da..5c94ea91 100644 --- a/docs/overview/why-coderabbit.md +++ b/docs/overview/why-coderabbit.md @@ -349,7 +349,7 @@ CodeRabbit is built for production environments with: ### Three Steps to Better Code Reviews 1. **Sign in** with [GitHub](/platforms/github-com), [GitLab](/platforms/gitlab-com), or [Azure DevOps](/platforms/azure-devops) -2. Select and add a repositories in CodeRabbit dashboard +2. Select and add repositories in CodeRabbit dashboard 3. That's it. You're good to go. :::tip INSTANT ACTIVATION