diff --git a/.github/workflows/ghcr-publish.yml b/.github/workflows/ghcr-publish.yml
index ef805a8a..164cd7a5 100644
--- a/.github/workflows/ghcr-publish.yml
+++ b/.github/workflows/ghcr-publish.yml
@@ -81,7 +81,8 @@ jobs:
build-args: |
SOURCEBOT_VERSION=${{ github.ref_name }}
POSTHOG_PAPIK=${{ secrets.POSTHOG_PAPIK }}
-
+ PUBLIC_SEARCH_DEMO=${{ secrets.PUBLIC_SEARCH_DEMO }}
+
- name: Export digest
run: |
mkdir -p /tmp/digests
diff --git a/Dockerfile b/Dockerfile
index 766586c6..6fa4411a 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -26,6 +26,7 @@ ENV NEXT_TELEMETRY_DISABLED=1
# @see: https://phase.dev/blog/nextjs-public-runtime-variables/
ARG NEXT_PUBLIC_SOURCEBOT_TELEMETRY_DISABLED=BAKED_NEXT_PUBLIC_SOURCEBOT_TELEMETRY_DISABLED
ARG NEXT_PUBLIC_SOURCEBOT_VERSION=BAKED_NEXT_PUBLIC_SOURCEBOT_VERSION
+ENV NEXT_PUBLIC_SEARCH_DEMO=BAKED_NEXT_PUBLIC_SEARCH_DEMO
ENV NEXT_PUBLIC_POSTHOG_PAPIK=BAKED_NEXT_PUBLIC_POSTHOG_PAPIK
# @note: leading "/" is required for the basePath property. @see: https://nextjs.org/docs/app/api-reference/next-config-js/basePath
ARG NEXT_PUBLIC_DOMAIN_SUB_PATH=/BAKED_NEXT_PUBLIC_DOMAIN_SUB_PATH
@@ -54,6 +55,10 @@ ARG SOURCEBOT_VERSION=unknown
ENV SOURCEBOT_VERSION=$SOURCEBOT_VERSION
RUN echo "Sourcebot Version: $SOURCEBOT_VERSION"
+ARG PUBLIC_SEARCH_DEMO=false
+ENV PUBLIC_SEARCH_DEMO=$PUBLIC_SEARCH_DEMO
+RUN echo "Public Search Demo: $PUBLIC_SEARCH_DEMO"
+
# Valid values are: debug, info, warn, error
ENV SOURCEBOT_LOG_LEVEL=info
diff --git a/demo-site-config.json b/demo-site-config.json
index 8adbb703..4e89038c 100644
--- a/demo-site-config.json
+++ b/demo-site-config.json
@@ -96,6 +96,21 @@
"flameshot-org/flameshot",
"envoyproxy/envoy"
]
+ },
+ {
+ "type": "gitlab",
+ "token": {
+ "env": "GITLAB_TOKEN"
+ },
+ "groups": [
+ "fdroid"
+ ],
+ "exclude": {
+ "projects": [
+ "fdroid/wiki",
+ "Matrixcoffee/internal-twif-preview"
+ ]
+ }
}
]
}
\ No newline at end of file
diff --git a/entrypoint.sh b/entrypoint.sh
index 2ed5ec20..830c8fd7 100644
--- a/entrypoint.sh
+++ b/entrypoint.sh
@@ -93,6 +93,11 @@ echo -e "\e[34m[Info] Using config file at: '$CONFIG_PATH'.\e[0m"
export NEXT_PUBLIC_SOURCEBOT_VERSION="$SOURCEBOT_VERSION"
fi
+ # Infer NEXT_PUBLIC_SEARCH_DEMO if it is not set
+ if [ -z "$NEXT_PUBLIC_SEARCH_DEMO" ] && [ ! -z "$PUBLIC_SEARCH_DEMO" ]; then
+ export NEXT_PUBLIC_SEARCH_DEMO="$PUBLIC_SEARCH_DEMO"
+ fi
+
# Always infer NEXT_PUBLIC_POSTHOG_PAPIK
export NEXT_PUBLIC_POSTHOG_PAPIK="$POSTHOG_PAPIK"
@@ -103,6 +108,7 @@ echo -e "\e[34m[Info] Using config file at: '$CONFIG_PATH'.\e[0m"
sed -i "s|BAKED_NEXT_PUBLIC_SOURCEBOT_TELEMETRY_DISABLED|${NEXT_PUBLIC_SOURCEBOT_TELEMETRY_DISABLED}|g" "$file"
sed -i "s|BAKED_NEXT_PUBLIC_SOURCEBOT_VERSION|${NEXT_PUBLIC_SOURCEBOT_VERSION}|g" "$file"
sed -i "s|BAKED_NEXT_PUBLIC_POSTHOG_PAPIK|${NEXT_PUBLIC_POSTHOG_PAPIK}|g" "$file"
+ sed -i "s|BAKED_NEXT_PUBLIC_SEARCH_DEMO|${NEXT_PUBLIC_SEARCH_DEMO}|g" "$file"
done
}
diff --git a/packages/web/src/app/components/editorContextMenu.tsx b/packages/web/src/app/components/editorContextMenu.tsx
index 3e7b6286..c6874c64 100644
--- a/packages/web/src/app/components/editorContextMenu.tsx
+++ b/packages/web/src/app/components/editorContextMenu.tsx
@@ -116,7 +116,7 @@ export const EditorContextMenu = ({
description: "✅ Copied link to selection",
});
- captureEvent('share_link_created', {});
+ captureEvent('wa_share_link_created', {});
// Reset the selection
view.dispatch(
diff --git a/packages/web/src/app/components/registrationCard.tsx b/packages/web/src/app/components/registrationCard.tsx
new file mode 100644
index 00000000..af64db86
--- /dev/null
+++ b/packages/web/src/app/components/registrationCard.tsx
@@ -0,0 +1,49 @@
+"use client"
+
+import { useState } from "react"
+import Link from "next/link"
+import { Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle } from "@/components/ui/card"
+import { Button } from "@/components/ui/button"
+import { ArrowRight, Code, Database, Search } from "lucide-react"
+import useCaptureEvent from "@/hooks/useCaptureEvent"
+
+export default function RegistrationCard() {
+ const [isHovered, setIsHovered] = useState(false)
+ const captureEvent = useCaptureEvent()
+
+ return (
+ Search your private and public repositories Index your own codebase in minutes
+ 14 day free trial. No credit card required.
+