From 4e19429137ca3f16653c52f030812da15f9bd44e Mon Sep 17 00:00:00 2001 From: Carolina Gonzalez Date: Wed, 13 Aug 2025 13:49:16 -0400 Subject: [PATCH] feat(apps): scaffold experimentation apps --- apps/dashboard/eslint.config.mjs | 19 ++++ apps/dashboard/index.html | 12 +++ apps/dashboard/package.json | 32 ++++++ apps/dashboard/src/App.tsx | 53 +++++++++ apps/dashboard/src/main.tsx | 10 ++ apps/dashboard/tsconfig.json | 18 ++++ apps/dashboard/vite.config.ts | 48 +++++++++ apps/kitchensink-react/src/AppRoutes.tsx | 2 +- apps/sdk-app/eslint.config.mjs | 19 ++++ apps/sdk-app/index.html | 12 +++ apps/sdk-app/package.json | 32 ++++++ apps/sdk-app/src/App.tsx | 33 ++++++ apps/sdk-app/src/main.tsx | 10 ++ apps/sdk-app/tsconfig.json | 18 ++++ apps/sdk-app/vite.config.ts | 31 ++++++ knip.config.ts | 16 +++ package.json | 1 + pnpm-lock.yaml | 132 +++++++++++++++++++---- 18 files changed, 474 insertions(+), 24 deletions(-) create mode 100644 apps/dashboard/eslint.config.mjs create mode 100644 apps/dashboard/index.html create mode 100644 apps/dashboard/package.json create mode 100644 apps/dashboard/src/App.tsx create mode 100644 apps/dashboard/src/main.tsx create mode 100644 apps/dashboard/tsconfig.json create mode 100644 apps/dashboard/vite.config.ts create mode 100644 apps/sdk-app/eslint.config.mjs create mode 100644 apps/sdk-app/index.html create mode 100644 apps/sdk-app/package.json create mode 100644 apps/sdk-app/src/App.tsx create mode 100644 apps/sdk-app/src/main.tsx create mode 100644 apps/sdk-app/tsconfig.json create mode 100644 apps/sdk-app/vite.config.ts diff --git a/apps/dashboard/eslint.config.mjs b/apps/dashboard/eslint.config.mjs new file mode 100644 index 000000000..a736bc54e --- /dev/null +++ b/apps/dashboard/eslint.config.mjs @@ -0,0 +1,19 @@ +// @ts-check +import baseESLintConfig from '@repo/config-eslint' +import reactConfig from '@repo/config-eslint/react' + +export default [ + { + ignores: [ + '.DS_Store', + '**/node_modules', + '**/build', + '**/dist', + '.env', + '.env.*', + '!.env.example', + ], + }, + ...baseESLintConfig, + ...reactConfig, +] diff --git a/apps/dashboard/index.html b/apps/dashboard/index.html new file mode 100644 index 000000000..4a9f02549 --- /dev/null +++ b/apps/dashboard/index.html @@ -0,0 +1,12 @@ + + + + + + Dashboard + + +
+ + + diff --git a/apps/dashboard/package.json b/apps/dashboard/package.json new file mode 100644 index 000000000..564015e65 --- /dev/null +++ b/apps/dashboard/package.json @@ -0,0 +1,32 @@ +{ + "name": "@sanity/dashboard", + "version": "0.0.0", + "private": true, + "type": "module", + "scripts": { + "build": "pnpm tsc && vite build", + "clean": "rimraf dist", + "dev": "vite", + "lint": "eslint .", + "preview": "vite preview", + "tsc": "tsc --noEmit" + }, + "prettier": "@sanity/prettier-config", + "dependencies": { + "@sanity/sdk-react": "workspace:*", + "@sanity/ui": "^2.15.13", + "react": "^18.3.1", + "react-compiler-runtime": "19.1.0-rc.1", + "react-dom": "^18.3.1", + "typescript": "^5.8.3" + }, + "devDependencies": { + "@repo/config-eslint": "workspace:*", + "@repo/tsconfig": "workspace:*", + "@types/react": "^19.1.2", + "@types/react-dom": "^19.1.2", + "@vitejs/plugin-react": "^4.4.1", + "eslint": "^9.25.1", + "vite": "^6.3.4" + } +} diff --git a/apps/dashboard/src/App.tsx b/apps/dashboard/src/App.tsx new file mode 100644 index 000000000..18efa4eb9 --- /dev/null +++ b/apps/dashboard/src/App.tsx @@ -0,0 +1,53 @@ +import {SanityApp, SanityConfig} from '@sanity/sdk-react' +import {Spinner, ThemeProvider} from '@sanity/ui' +import {buildTheme} from '@sanity/ui/theme' +import {type JSX, Suspense} from 'react' + +const theme = buildTheme({}) + +const devConfigs: SanityConfig[] = [ + { + projectId: 'ppsg7ml5', + dataset: 'test', + }, + { + projectId: 'd45jg133', + dataset: 'production', + }, + { + projectId: 'v28v5k8m', + dataset: 'production', + }, +] + +export default function App(): JSX.Element { + return ( + + } config={devConfigs}> + +
+
+ Dashboard (iframes sdk-app below) +
+