From 0c3ac48a3bc5ec18942d88df4444ee5562e55311 Mon Sep 17 00:00:00 2001 From: SinachPat Date: Thu, 30 Apr 2026 01:21:48 +0100 Subject: [PATCH] improved a lot of things --- packages/app/src/app/providers.tsx | 2 + packages/app/src/app/workspace/[wid]/page.tsx | 24 +- .../app/src/components/canvas/Artboard.tsx | 9 +- .../src/components/canvas/LiveArtboard.tsx | 55 ++- .../app/src/components/chrome/AppChrome.tsx | 32 ++ .../src/components/inspector/Inspector.tsx | 1 + .../navigator/ArtboardNavigator.tsx | 1 + .../app/src/components/shell/AppHeader.tsx | 30 ++ .../app/src/components/shell/ProjectCard.tsx | 1 + .../components/walkthrough/TourAutoStart.tsx | 39 ++ .../components/walkthrough/TourOverlay.tsx | 441 ++++++++++++++++++ .../src/components/walkthrough/tourSteps.tsx | 189 ++++++++ packages/app/src/store/walkthrough.ts | 48 ++ packages/live-sdk/src/hook.ts | 373 +++++++++++---- packages/renderer/src/fiber-hook.ts | 253 ++++++++-- 15 files changed, 1322 insertions(+), 176 deletions(-) create mode 100644 packages/app/src/components/walkthrough/TourAutoStart.tsx create mode 100644 packages/app/src/components/walkthrough/TourOverlay.tsx create mode 100644 packages/app/src/components/walkthrough/tourSteps.tsx create mode 100644 packages/app/src/store/walkthrough.ts diff --git a/packages/app/src/app/providers.tsx b/packages/app/src/app/providers.tsx index b52e248..d596ae5 100644 --- a/packages/app/src/app/providers.tsx +++ b/packages/app/src/app/providers.tsx @@ -5,6 +5,7 @@ import { FluentProvider } from '@fluentui/react-components'; import { QueryClient, QueryClientProvider } from '@tanstack/react-query'; import { originmainLightTheme, originmainDarkTheme } from '@originmain/ui'; import { useTheme } from '@/store/theme'; +import { TourOverlay } from '@/components/walkthrough/TourOverlay'; export function Providers({ children }: { children: ReactNode }) { // TanStack Query v5: create QueryClient inside useState so it's stable across @@ -35,6 +36,7 @@ export function Providers({ children }: { children: ReactNode }) { {children} + ); diff --git a/packages/app/src/app/workspace/[wid]/page.tsx b/packages/app/src/app/workspace/[wid]/page.tsx index a811f3c..6b00409 100644 --- a/packages/app/src/app/workspace/[wid]/page.tsx +++ b/packages/app/src/app/workspace/[wid]/page.tsx @@ -5,6 +5,7 @@ import { serverClient } from '@/lib/supabase'; import { AppHeader } from '@/components/shell/AppHeader'; import { ProjectCard } from '@/components/shell/ProjectCard'; import { DesignLanguageUpload } from '@/components/shell/DesignLanguageUpload'; +import { TourAutoStart } from '@/components/walkthrough/TourAutoStart'; import { getActiveDesignLanguageFile } from '@originmain/origin-graph'; import type { Workspace, Project } from '@originmain/origin-graph'; @@ -47,6 +48,8 @@ export default async function WorkspacePage({ params }: { params: Promise<{ wid: return (
+ {/* Auto-start tour for first-time visitors (client component, renders null) */} + - {/* Title row */} -
+ {/* Title row — data-tour="projects-section" anchors the tour spotlight */} +

Projects @@ -92,13 +95,16 @@ export default async function WorkspacePage({ params }: { params: Promise<{ wid: Settings - + diff --git a/packages/app/src/components/canvas/Artboard.tsx b/packages/app/src/components/canvas/Artboard.tsx index 51b9156..6d7e99a 100644 --- a/packages/app/src/components/canvas/Artboard.tsx +++ b/packages/app/src/components/canvas/Artboard.tsx @@ -28,7 +28,11 @@ const DIFF_STATUS_BADGE: Record @@ -360,6 +365,7 @@ function EmptyArtboardContent({ return (