-
Notifications
You must be signed in to change notification settings - Fork 1.5k
feat: new landing #858
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
feat: new landing #858
Conversation
…n, deployed chat improvements (simstudioai#843) * fix(domain): fix telemetry endpoint, only add redirects for hosted version (simstudioai#822) * fix(otel): change back telemetry endpoint * only add redirects for hosted version --------- Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> * fix(search-modal): fixed search modal keyboard nav (simstudioai#823) * fixed search modal keyboard nav * break down file --------- Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> * improvement(docs): add base exec charge info to docs (simstudioai#826) * improvement(doc-tags-subblock): use table for doc tags subblock in create_document tool for KB (simstudioai#827) * improvement(doc-tags-subblock): use table for doc tags create doc tool in KB block * enforce max tags * remove red warning text * fix(bugs): fixed rb2b csp, fixed overly-verbose logs, fixed x URLs (simstudioai#828) Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> * feat(wand): subblock level wand configuration + migrate old wand usage to this (simstudioai#829) * feat(wand): subblock level wand configuration + migrate old wand usage to this * fix build issue * Update apps/sim/app/workspace/[workspaceId]/w/[workflowId]/components/wand-prompt-bar/wand-prompt-bar.tsx Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> * remove optional param * remove unused test file * address greptile comments * change to enum for gen type * fix caching issue --------- Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com> * feat(tools): added hunter.io tools/block, added default values of first option in dropdowns to avoid operation selector issue, added descriptions & param validation & updated docs (simstudioai#825) * feat(tools): added hunter.io tools/block, added default values of first option in dropdowns to avoid operation selector issue * fix * added description for all outputs, fixed param validation for tools * cleanup * add dual validation, once during serialization and once during execution * improvement(docs): add base exec charge info to docs (simstudioai#826) * improvement(doc-tags-subblock): use table for doc tags subblock in create_document tool for KB (simstudioai#827) * improvement(doc-tags-subblock): use table for doc tags create doc tool in KB block * enforce max tags * remove red warning text * fix(bugs): fixed rb2b csp, fixed overly-verbose logs, fixed x URLs (simstudioai#828) Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> * fixed serialization errors to appear like execution errors, also fixed contrast on cmdk modal * fixed required for tools, added tag dropdown for kb tags * fix remaining tools with required fields * update utils * update docs * fix kb tags * fix types for exa * lint * updated contributing guide + pr template * Test pre-commit hook with linting * Test pre-commit hook again * remove test files * fixed wealthbox tool * update telemetry endpoints --------- Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> Co-authored-by: Vikhyath Mondreti <vikhyathvikku@gmail.com> * fix(deployed-chat): trigger blocks should not interfere with deployed chat exec (simstudioai#832) * fix(deployed-chat): allow non-streaming responses in deployed chat, allow partial failure responses in deployed chat (simstudioai#833) * fix(deployed-chat): allow non-streaming responses in deployed chat, allow partial failure responses in deployed chat * fix(csp): runtime variable resolution for CSP * cleanup --------- Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> * fix(sockets): duplicate block op should go through debounced path (simstudioai#834) * improvement(sockets): add batch subblock updates for duplicate to clear queue faster (simstudioai#835) * improvement(sockets): duplicate op should let addBlock take subblock values instead of separate looped op (simstudioai#836) * improvement(sockets): addBlock can accept subblock values * cleanup unused code * fix(deploy-modal): break down deploy modal into separate components (simstudioai#837) Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> * fix(kb-tags): docs page kb tags ui (simstudioai#838) * fix(kb-tags): docs page kb tags ui * remove console logs * remove console error * fix(chat-deploy): fixed form submission access patterns, fixed kb block filters (simstudioai#839) * fix(chat-deploy): fixed form submission access patterns * fix(kb-block): fix tag filters component, removed unused component * fixed kb block subcomponents --------- Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> * fix(kb-tags): ui fixes, delete persistence for doc page header (simstudioai#841) * fix deletion of tags + refactor next slot calc * fix kb tag filters count ui * fix(chat-deploy): added new image upload component, fixed some state issues with success view (simstudioai#842) * fix(chat-deploy): added new image upload component, fixed some state issues with success view * cleanup --------- Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> * feat(deploy-chat): added a logo upload for the chat, incr font size * fix(deploy-modal): break down deploy modal into separate components (simstudioai#837) Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> --------- Co-authored-by: waleedlatif <waleedlatif@waleedlatifs-MacBook-Pro.local> Co-authored-by: Vikhyath Mondreti <vikhyathvikku@gmail.com> Co-authored-by: greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
@emir404 is attempting to deploy a commit to the Sim Studio Team on Vercel. A member of the Team first needs to authorize it. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Greptile Summary
This PR implements a comprehensive redesign of the landing page, transforming it from a complex, dark-themed interface with interactive React Flow workflow visualizations to a clean, light-themed marketing page. The changes include:
Major Architectural Changes:
- Complete removal of React Flow-based interactive workflow diagrams (hero-workflow.tsx, hero-block.tsx, hero-edge.tsx deleted)
- Elimination of Framer Motion animations across multiple components to reduce bundle size
- Theme shift from dark (#0C0C0C background) to light (white background) throughout the landing page
New Landing Page Structure:
The landing page now follows a conventional SaaS marketing flow with these new sections:
- Templates: Community templates with category filtering and search (placeholder implementation)
- Clients: Responsive client logo showcase with DoD and other partners
- Pricing: Dedicated pricing section for conversion optimization
- CTA: Call-to-action section with FlickeringGrid animation background
Typography and Design System Updates:
- Added GeistSans, GeistMono, and Inter fonts with proper CSS variable configuration
- Updated components to use semantic CSS variables (text-foreground, border-border, bg-card) instead of hardcoded colors
- Simplified navigation with Login/Sign up buttons replacing generic Contact button
- Added Pricing and Enterprise links, removed Contributors link
Component Simplifications:
- Hero section now uses static background image and AgentChatInput instead of complex workflow visualization
- Integrations component replaced detailed animated sections with simple orbiting circles visualization
- Footer became static with certification badges and embedded SVG assets
- Navigation wrapper removed loading animations in favor of simple conditional rendering
The redesign prioritizes performance, maintainability, and conversion optimization over interactive feature demonstrations, aligning with modern landing page best practices.
Confidence score: 2/5
- This PR requires careful review due to multiple critical issues that will break functionality
- Score lowered due to broken font configuration, non-functional agent navigation links, incomplete component implementations, and missing Footer prop
- Pay close attention to
apps/sim/app/globals.css
,apps/sim/app/(landing)/components/agent-chat-input.tsx
, andapps/sim/app/(landing)/landing.tsx
20 files reviewed, 12 comments
alt='DoD' | ||
width={120} | ||
height={120} | ||
className="h-12 sm:h-16 md:h-18 lg:h-20 w-auto" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: Extra indentation on this line - should align with other props
<Image | ||
src='/clients/dod.svg' | ||
alt='DoD' | ||
width={120} | ||
height={120} | ||
className="h-12 sm:h-16 md:h-18 lg:h-20 w-auto" | ||
/> | ||
<Image | ||
src='/clients/harryritchies.png' | ||
alt='Harry Ritchies' | ||
width={120} | ||
height={120} | ||
className="h-12 sm:h-16 md:h-18 lg:h-20 w-auto" | ||
/> | ||
<Image | ||
src='/clients/epiq.png' | ||
alt='Epiq' | ||
width={120} | ||
height={120} | ||
className="h-12 sm:h-16 md:h-18 lg:h-20 w-auto" | ||
/> | ||
<Image | ||
src='/clients/mobilehealth.svg' | ||
alt='Mobile Health' | ||
width={120} | ||
height={120} | ||
className="h-12 sm:h-16 md:h-18 lg:h-20 w-auto" | ||
/> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: Consider extracting client data into a configuration array to reduce code duplication and make it easier to maintain
Context Used: Context - When defining properties for components, use a dedicated config file (.ts) for configuration and keep rendered components in their respective component files. (link)
<div className='animation-container translate-y-[-10px] animate-fade-up pt-4 pb-10 opacity-0 will-change-[opacity,transform] [animation-delay:600ms]'> | ||
{renderActionUI()} | ||
<div className="relative w-full flex flex-col items-center justify-center overflow-hidden min-h-[calc(100vh-6rem)] px-4 sm:px-8 md:px-12 lg:px-20 xl:px-32 py-12 sm:py-16 lg:py-24"> | ||
<Image src="/static/bg.png" className='absolute top-24 left-0 w-full h-full object-cover' alt="Sim Logo" width={2000} height={2000} /> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: Background image lacks proper alt text - 'Sim Logo' doesn't describe the actual background content
const memoizedColor = useMemo(() => { | ||
const toRGBA = (color: string) => { | ||
if (typeof window === "undefined") { | ||
return `rgba(0, 0, 0,`; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
syntax: Missing closing parenthesis in fallback RGBA string
return `rgba(0, 0, 0,`; | |
return `rgba(0, 0, 0, 0)`; |
const canvas = document.createElement("canvas"); | ||
canvas.width = canvas.height = 1; | ||
const ctx = canvas.getContext("2d"); | ||
if (!ctx) return "rgba(255, 0, 0,"; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
syntax: Missing closing parenthesis in fallback RGBA string
if (!ctx) return "rgba(255, 0, 0,"; | |
if (!ctx) return "rgba(255, 0, 0, 0)"; |
{ href: '/contributors', label: 'Contributors' }, | ||
{ href: '#pricing', label: 'Pricing' }, | ||
{ href: '/enterprise', label: 'Enterprise' }, | ||
// { href: '/blog', label: 'Blog' }, | ||
] | ||
|
||
const handleContributorsHover = usePrefetchOnHover() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: The handleContributorsHover
function is defined but no longer used since Contributors link was removed
</Button> | ||
</Link> | ||
</motion.div> | ||
<Link href='/signup'> | ||
<Button className='rounded-[8px] bg-[#6F3DFA] font-geist-sans font-medium text-base text-neutral-100 transition-colors duration-200 hover:bg-[#802FFF]'> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: Desktop sign up button uses #6F3DFA
but mobile version uses #701ffc
- inconsistent brand colors
@@ -203,7 +203,7 @@ | |||
} | |||
|
|||
.font-geist-mono { | |||
font-family: var(--font-geist-mono); | |||
font-family: var(--geist-mono); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
logic: This variable name is incorrect and will break font styling. Should be var(--font-geist-mono)
to match the variable set by GeistMono.variable in layout.tsx and the Tailwind config
font-family: var(--geist-mono); | |
font-family: var(--font-geist-mono); |
</linearGradient> | ||
</defs> | ||
</svg> | ||
<div className='relative flex w-full flex-col overflow-hidden border-border border-b py-10 will-change-[opacity,transform] sm:py-12 md:py-16 gap-16 px-8 sm:px-8 md:px-12 lg:px-40'> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
style: The will-change-[opacity,transform]
CSS property is applied but no animations are present in this component. This may cause unnecessary GPU layer promotion.
<div className='relative flex w-full flex-col overflow-hidden border-border border-b py-10 will-change-[opacity,transform] sm:py-12 md:py-16 gap-16 px-8 sm:px-8 md:px-12 lg:px-40'> | |
<div className='relative flex w-full flex-col overflow-hidden border-border border-b py-10 sm:py-12 md:py-16 gap-16 px-8 sm:px-8 md:px-12 lg:px-40'> |
</div> | ||
<div className='flex flex-col sm:flex-row gap-8 sm:gap-12 md:gap-16 lg:gap-16 items-start'> | ||
<div className='flex flex-col gap-3 sm:gap-4 md:gap-5 items-start'> | ||
<Link href={"docs.sim.ai"} target='_blank' className='font-medium text-base sm:text-lg text-foreground hover:text-muted-foreground transition-colors'> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
logic: Missing protocol in href - should be 'https://docs.sim.ai' instead of 'docs.sim.ai'
<Link href={"docs.sim.ai"} target='_blank' className='font-medium text-base sm:text-lg text-foreground hover:text-muted-foreground transition-colors'> | |
<Link href={"https://docs.sim.ai"} target='_blank' className='font-medium text-base sm:text-lg text-foreground hover:text-muted-foreground transition-colors'> |
Summary
Brief description of what this PR does and why.
New landing page
Fixes #(issue)
Type of Change
Testing
How has this been tested? What should reviewers focus on?
Locally
Checklist
Screenshots/Videos