Skip to content

Commit d6dc38a

Browse files
fix: update frontend dependencies and improve router configuration
- Upgrade Vite to version 8 and TypeScript to version 6 - Update react-router-dom and web-vitals versions - Adjust router configuration to remove fallback element - Add TypeScript declarations for react-syntax-highlighter ESM imports
1 parent 4aae54a commit d6dc38a

File tree

7 files changed

+590
-683
lines changed

7 files changed

+590
-683
lines changed

.github/copilot-instructions.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ Examples: `scatter-basic`, `scatter-color-mapped`, `bar-grouped-horizontal`, `he
112112
- **`core/database/types.py`**: Custom SQLAlchemy types (PostgreSQL + SQLite compatibility)
113113
- **`core/database/repositories.py`**: Data access layer
114114
- **`api/`**: FastAPI backend (routers, schemas, dependencies, cache, analytics, MCP server)
115-
- **`app/`**: React frontend (React 19 + TypeScript 5 + Vite 7 + MUI 7)
115+
- **`app/`**: React frontend (React 19 + TypeScript 6 + Vite 8 + MUI 7)
116116
- **`agentic/`**: AI workflow layer (composable phases, prompt templates, runtime state)
117117
- **`automation/`**: CI/CD helper scripts (workflow_cli, label_manager, sync_to_postgres)
118118
- **`tests/unit/`**: Unit tests with mocked dependencies
@@ -213,7 +213,7 @@ plt.savefig('plot.png', dpi=300, bbox_inches='tight')
213213
## Tech Stack
214214

215215
- **Backend**: FastAPI, SQLAlchemy (async), PostgreSQL, Python 3.14+
216-
- **Frontend**: React 19, TypeScript 5, Vite 7, MUI 7
216+
- **Frontend**: React 19, TypeScript 6, Vite 8, MUI 7
217217
- **Package Manager**: uv (Python), yarn (Node.js)
218218
- **Linting**: Ruff (Python), ESLint (TypeScript)
219219

.serena/memories/project_overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ matplotlib, seaborn, plotly, bokeh, altair, plotnine, pygal, highcharts, lets-pl
88

99
## Tech Stack
1010
- **Backend**: Python 3.14+, FastAPI, SQLAlchemy async, asyncpg, PostgreSQL
11-
- **Frontend**: React 19, Vite 7, TypeScript 5, MUI 7, Emotion CSS-in-JS
11+
- **Frontend**: React 19, Vite 8, TypeScript 6, MUI 7, Emotion CSS-in-JS
1212
- **Package Managers**: uv (Python), yarn (frontend)
1313
- **Infrastructure**: Google Cloud Run, Cloud SQL, Cloud Storage (GCS)
1414
- **AI**: Claude (code generation, quality review, spec creation)

agentic/docs/project-guide.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ Example: `plots/scatter-basic/` contains everything for the basic scatter plot.
163163
- **`core/database/types.py`**: Custom SQLAlchemy types (PostgreSQL + SQLite compatibility)
164164
- **`core/database/repositories.py`**: Data access layer
165165
- **`api/`**: FastAPI backend (routers, schemas, dependencies, cache, analytics, MCP server)
166-
- **`app/`**: React frontend (Vite 7 + TypeScript 5 + MUI 7)
166+
- **`app/`**: React frontend (Vite 8 + TypeScript 6 + MUI 7)
167167
- **`agentic/`**: AI workflow layer (composable phases, prompt templates, runtime state)
168168
- **`agentic/workflows/`**: Click CLI scripts (plan, build, test, review + orchestrators)
169169
- **`agentic/commands/`**: Markdown prompt templates
@@ -316,7 +316,7 @@ gs://pyplots-images/
316316
## Tech Stack
317317

318318
- **Backend**: FastAPI, SQLAlchemy (async), PostgreSQL, Python 3.14+
319-
- **Frontend**: React 19, Vite 7, TypeScript 5, MUI 7
319+
- **Frontend**: React 19, Vite 8, TypeScript 6, MUI 7
320320
- **Plotting**: matplotlib, seaborn, plotly, bokeh, altair, plotnine, pygal, highcharts, lets-plot
321321
- **Package Manager**: uv (fast Python installer)
322322
- **Infrastructure**: Google Cloud Run, Cloud SQL, Cloud Storage

app/package.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@
2626
"react": "^19.2.4",
2727
"react-dom": "^19.2.4",
2828
"react-helmet-async": "^3.0.0",
29-
"react-router-dom": "^7.13.2",
29+
"react-router-dom": "^7.14.0",
3030
"react-syntax-highlighter": "^16.1.1",
31-
"web-vitals": "^5.1.0"
31+
"web-vitals": "^5.2.0"
3232
},
3333
"devDependencies": {
3434
"@eslint/js": "^10.0.1",
@@ -39,17 +39,17 @@
3939
"@types/react": "^19.2.14",
4040
"@types/react-dom": "^19.1.7",
4141
"@types/react-syntax-highlighter": "^15.5.13",
42-
"@typescript-eslint/eslint-plugin": "^8.57.0",
43-
"@typescript-eslint/parser": "^8.57.0",
44-
"@vitejs/plugin-react-swc": "^4.2.3",
45-
"@vitest/coverage-v8": "^4.0.18",
46-
"eslint": "^10.0.3",
42+
"@typescript-eslint/eslint-plugin": "^8.58.0",
43+
"@typescript-eslint/parser": "^8.58.0",
44+
"@vitejs/plugin-react-swc": "^4.3.0",
45+
"@vitest/coverage-v8": "^4.1.2",
46+
"eslint": "^10.1.0",
4747
"eslint-plugin-react-hooks": "^7.0.1",
4848
"eslint-plugin-react-refresh": "^0.5.2",
4949
"jsdom": "^29.0.1",
50-
"typescript": "^5.9.2",
51-
"vite": "^7.3.1",
50+
"typescript": "^6.0.2",
51+
"vite": "^8.0.3",
5252
"vite-plugin-compression2": "^2.5.3",
53-
"vitest": "^4.0.18"
53+
"vitest": "^4.1.2"
5454
}
5555
}

app/src/router.tsx

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ const router = createBrowserRouter([
1717
{
1818
path: '/',
1919
element: <Layout />,
20+
HydrateFallback: LazyFallback,
2021
children: [
2122
{ index: true, element: <HomePage /> },
2223
{ path: 'catalog', lazy: () => import('./pages/CatalogPage').then(m => ({ Component: m.CatalogPage, HydrateFallback: LazyFallback })) },
@@ -39,7 +40,7 @@ export function AppRouter() {
3940
<HelmetProvider>
4041
<ErrorBoundary>
4142
<AppDataProvider>
42-
<RouterProvider router={router} fallbackElement={<LazyFallback />} />
43+
<RouterProvider router={router} />
4344
</AppDataProvider>
4445
</ErrorBoundary>
4546
</HelmetProvider>

app/src/vite-env.d.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,8 @@ interface ImportMetaEnv {
77
interface ImportMeta {
88
readonly env: ImportMetaEnv;
99
}
10+
11+
// Deep ESM imports not covered by @types/react-syntax-highlighter
12+
declare module 'react-syntax-highlighter/dist/esm/prism-light';
13+
declare module 'react-syntax-highlighter/dist/esm/styles/prism';
14+
declare module 'react-syntax-highlighter/dist/esm/languages/prism/python';

0 commit comments

Comments
 (0)