diff --git a/src/components/githubCta.tsx b/src/components/githubCta.tsx
index fd30a99cb3555..adc0ec6ed1ac7 100644
--- a/src/components/githubCta.tsx
+++ b/src/components/githubCta.tsx
@@ -1,5 +1,6 @@
-import React from 'react';
+import React, {Fragment} from 'react';
+import {FeedbackModal} from './feedback/feedbackModal';
import {SmartLink} from './smartLink';
type GitHubCTAProps = {
@@ -27,9 +28,28 @@ export function GitHubCTA({sourceInstanceName, relativePath}: GitHubCTAProps) {
Contribute to Docs
{' '}
|
-
- Report a problem
- {' '}
+
+ {({showModal}) => (
+
+ {
+ if (!window.Sentry?.getCurrentHub?.()) {
+ return true;
+ }
+
+ // Only Stop event propagation if Sentry SDK is loaded
+ // (i.e. feedback is supported), otherwise will send you to github
+ e.preventDefault();
+ showModal();
+ return false;
+ }}
+ >
+ Report a problem
+ {' '}
+
+ )}
+
diff --git a/src/components/smartLink.tsx b/src/components/smartLink.tsx
index edd5e9387c86f..f1924fffae318 100644
--- a/src/components/smartLink.tsx
+++ b/src/components/smartLink.tsx
@@ -5,17 +5,18 @@ import {marketingUrlParams} from 'sentry-docs/utils';
import {ExternalLink} from './externalLink';
-type Props = {
+interface Props {
activeClassName?: string;
children?: React.ReactNode;
className?: string;
href?: string;
isActive?: boolean;
+ onClick?: (e: React.MouseEvent) => void;
remote?: boolean;
target?: string;
title?: string;
to?: string;
-};
+}
export function SmartLink({
to,