From 01cee9501d272ebdb59cbfd303f6dea508079c74 Mon Sep 17 00:00:00 2001 From: Srijan Ravisankar Date: Sun, 2 Nov 2025 14:52:19 -0500 Subject: [PATCH 1/4] feat(projects): add external link icon to open project in a new tab --- apps/web/src/app/projects/page.tsx | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/apps/web/src/app/projects/page.tsx b/apps/web/src/app/projects/page.tsx index 3d66a3c56..0e990ffa1 100644 --- a/apps/web/src/app/projects/page.tsx +++ b/apps/web/src/app/projects/page.tsx @@ -11,6 +11,7 @@ import { Trash2, Video, X, + ExternalLink } from "lucide-react"; import Image from "next/image"; import Link from "next/link"; @@ -487,10 +488,25 @@ function ProjectCard({ -
-

- {project.name} -

+
+
+

+ {project.name} +

+ +
+ {!isSelectionMode && ( Date: Sun, 2 Nov 2025 17:14:36 -0500 Subject: [PATCH 2/4] Update apps/web/src/app/projects/page.tsx Applied suggestions from CodeRabbit and tested them locally. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- apps/web/src/app/projects/page.tsx | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/apps/web/src/app/projects/page.tsx b/apps/web/src/app/projects/page.tsx index 0e990ffa1..4f73c6f40 100644 --- a/apps/web/src/app/projects/page.tsx +++ b/apps/web/src/app/projects/page.tsx @@ -494,10 +494,21 @@ function ProjectCard({ {project.name} + }} + onKeyDown={(e) => { + if (e.key === "Enter" || e.key === " ") { + e.preventDefault(); + e.stopPropagation(); + const newWindow = window.open(`/editor/${project.id}`, "_blank", "noopener,noreferrer"); + if (newWindow) newWindow.opener = null; + } + }} + className={`transition-opacity size-3 p-0 shrink-0 ml-0 ${ + isDropdownOpen ? "opacity-100" : "opacity-0 group-hover:opacity-100" + }`} + > + + + )}
{!isSelectionMode && ( From eeb5fe49b94b951bcc8c5ab69ef606c2ac88234c Mon Sep 17 00:00:00 2001 From: Srijan Ravisankar Date: Tue, 4 Nov 2025 23:11:19 -0500 Subject: [PATCH 4/4] Update apps/web/src/app/projects/page.tsx Checked the changes made by coderabbit locally. Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- apps/web/src/app/projects/page.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/web/src/app/projects/page.tsx b/apps/web/src/app/projects/page.tsx index 40bdbb12f..c5f9b7199 100644 --- a/apps/web/src/app/projects/page.tsx +++ b/apps/web/src/app/projects/page.tsx @@ -512,11 +512,11 @@ function ProjectCard({ if (newWindow) newWindow.opener = null; } }} - className={`transition-opacity size-3 p-0 shrink-0 ml-0 ${ + className={`transition-opacity size-6 p-0 shrink-0 ml-0 ${ isDropdownOpen ? "opacity-100" : "opacity-0 group-hover:opacity-100" }`} > - + )}