Uh oh!
There was an error while loading. Please reload this page.
improvement: landing, sidebar, globals, buttons - #3590
Conversation
PR SummaryMedium Risk Overview Reworks the hero “workspace preview” into a two-view experience: a new Standardizes UI theming by updating the brand tertiary green to Written by Cursor Bugbot for commit dc98812. Configure here. |
The latest updates on your projects. Learn more about Vercel for GitHub. |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Autofix prepared a fix for the issue found in the latest run.
- ✅ Fixed: Hero CTA links to non-existent
/enterpriseroute- Reverted the hero CTA href from /enterprise to /login, restoring the working route that existed before the breaking change.
Or push these changes by commenting:
@cursor push 9f56602c98
Preview (9f56602c98)
diff --git a/apps/sim/app/(home)/components/hero/hero.tsx b/apps/sim/app/(home)/components/hero/hero.tsx--- a/apps/sim/app/(home)/components/hero/hero.tsx+++ b/apps/sim/app/(home)/components/hero/hero.tsx@@ -71,11 +71,11 @@
<div className='mt-[12px] flex items-center gap-[8px]'>
<Link
- href='/enterprise'+ href='/login'
className={`${CTA_BASE} border-[#3d3d3d] text-[#ECECEC] transition-colors hover:bg-[#2A2A2A]`}
- aria-label='Get a demo'+ aria-label='Log in'
>
- Get a demo+ Log in
</Link>
<Link
href='/signup'This Bugbot Autofix run was free. To enable autofix for future PRs, go to the Cursor dashboard.
| aria-label='Get a demo' | ||
| > | ||
| Log in | ||
| Get a demo |
There was a problem hiding this comment.
Hero CTA links to non-existent /enterprise route
High Severity
The hero "Get a demo" button's href was changed from /login (a valid route) to /enterprise, which does not appear to have a corresponding page route. The Enterprise component in enterprise.tsx returns null (it's a stub), there is no enterprise/page.tsx in any route group, and no middleware or next.config rewrite handles this path. This prominent landing-page CTA will likely navigate users to a 404 page.
Greptile SummaryThis PR is a broad UI improvement pass touching 82 files across the landing page, workspace sidebar, modal components, button/button-group design tokens, and the database schema. The primary goals are: refreshing the landing page hero/CTA styling (white buttons replacing the green brand color on the public site), standardising Key observations:
Confidence Score: 3/5
Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[WorkspaceRootLayout\nworkspace/layout.tsx] -->|wraps all children with\ntracking-0.02em div| B[All Workspace Pages]
C[Button CVA\nbutton.tsx] -->|primary variant\nbg-#1D1D1D / dark:bg-white| D[~60 modal & sidebar consumers\nvariants changed tertiary → primary]
C -->|tertiary variant\nbg-brand-tertiary-2 / hover-#2DAC72| D
E[ButtonGroup CVA\nbutton-group.tsx] -->|active variant\nbg-#1D1D1D / dark:bg-white| F[ButtonGroup consumers]
G[globals.css] -->|--brand-tertiary-2: #33C482| H[Design Token Consumers]
G -->|sidebar-collapse-guard keyframe| I[.sidebar-container data-collapsed]
J[schema.ts\ncolor default #33C482] -->|matched by| K[Migration 0176\nALTER TABLE workspace\nSET DEFAULT #33C482]
J -->|matched by| L[emails/base.ts\nbrandTertiary #33C482]
Last reviewed commit: 01c3745 |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
d9d5e60 to
fbdae9eCompareemir-karabeg
commented
Mar 15, 2026
| return ( | ||
| <SocketProvider user={user}> | ||
| <div className='tracking-[0.02em]'>{children}</div> |
There was a problem hiding this comment.
Global letter-spacing via wrapper div
letter-spacing is an inherited CSS property, so adding tracking-[0.02em] to this wrapper div propagates to every descendant in the workspace — including monospace code editors, password inputs, inline code snippets, and any other element that relies on the browser's default tracking. Elements that don't explicitly set their own tracking-* class will silently inherit this value.
A more targeted and conventional approach is to declare this on the <body> (or a relevant root container) in globals.css:
body {
letter-spacing:0.02em;
}…or, if it should only apply to the workspace, use a dedicated CSS class scoped to the workspace root layout rather than a generic wrapper <div>.
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
| @@ -506,7 +509,7 @@ export function WorkspaceHeader({ | |||
| <Plus className='h-[14px] w-[14px] shrink-0 text-[var(--text-icon)]' /> | |||
| Create new workspace | |||
There was a problem hiding this comment.
"Create workspace" button moved outside DropdownMenuGroup
DropdownMenuGroup from Radix UI renders a role="group" element, which is important for keyboard navigation and screen-reader announcement inside the dropdown. Moving the "Create new workspace" button into a plain <div> removes that grouping semantic for the button.
Consider keeping the button inside its own DropdownMenuGroup (or at minimum a DropdownMenuItem-wrapped element) to maintain consistent keyboard navigation behaviour and accessibility parity with the rest of the dropdown items:
<DropdownMenuGroupclassName='flex flex-col gap-[2px]'><button...>Create new workspace</button></DropdownMenuGroup>Uh oh!
There was an error while loading. Please reload this page.
* improvement: landing, sidebar, globals, buttons * improvement(landing): features * improvement: features, footer, tab modals * migrations * temp: enterprise link * addressed comments



Summary
UI improvement
Type of Change
Checklist