diff --git a/frontend/public/pyspur-logo.svg b/frontend/public/pyspur-logo.svg
new file mode 100644
index 00000000..8f4ca211
--- /dev/null
+++ b/frontend/public/pyspur-logo.svg
@@ -0,0 +1,15 @@
+
diff --git a/frontend/src/components/Header.tsx b/frontend/src/components/Header.tsx
index 668087b1..3169388e 100644
--- a/frontend/src/components/Header.tsx
+++ b/frontend/src/components/Header.tsx
@@ -25,13 +25,12 @@ import { useSaveWorkflow } from '../hooks/useSaveWorkflow'
import { useWorkflowExecution } from '../hooks/useWorkflowExecution'
import { setProjectName } from '../store/flowSlice'
import { AlertState } from '../types/alert'
-import { getWorkflow, getRunStatus } from '../utils/api'
+import { getRunStatus, getWorkflow } from '../utils/api'
+import { handleDownloadImage } from './canvas/FlowCanvas'
import DeployModal from './modals/DeployModal'
import HelpModal from './modals/HelpModal'
import RunModal from './modals/RunModal'
import SettingsCard from './modals/SettingsModal'
-import { RunResponse } from '../types/api_types/runSchemas'
-import { handleDownloadImage } from './canvas/FlowCanvas'
interface HeaderProps {
activePage: 'dashboard' | 'workflow' | 'evals' | 'trace' | 'rag'
@@ -184,7 +183,7 @@ const Header: React.FC = ({ activePage, associatedWorkflowId, runId
end_time: runData.end_time,
initial_inputs: runData.initial_inputs,
outputs: runData.outputs,
- tasks: runData.tasks.map(task => ({
+ tasks: runData.tasks.map((task) => ({
id: task.id,
node_id: task.node_id,
status: task.status,
@@ -192,8 +191,8 @@ const Header: React.FC = ({ activePage, associatedWorkflowId, runId
outputs: task.outputs,
error: task.error,
start_time: task.start_time,
- end_time: task.end_time
- }))
+ end_time: task.end_time,
+ })),
}
const blob = new Blob([JSON.stringify(traceData, null, 2)], {
@@ -249,10 +248,16 @@ const Header: React.FC = ({ activePage, associatedWorkflowId, runId
>
{activePage === 'dashboard' ? (
- PySpur
+
+

+
PySpur
+
) : (
- PySpur
+
+

+
PySpur
+
)}
@@ -414,14 +419,26 @@ const Header: React.FC = ({ activePage, associatedWorkflowId, runId
}
+ startContent={
+
+ }
>
Download JSON
}
+ startContent={
+
+ }
>
Download Image
@@ -451,14 +468,26 @@ const Header: React.FC = ({ activePage, associatedWorkflowId, runId
}
+ startContent={
+
+ }
>
Download JSON
}
+ startContent={
+
+ }
>
Download Image
diff --git a/frontend/src/pages/_app.tsx b/frontend/src/pages/_app.tsx
index d9cae925..021b416c 100644
--- a/frontend/src/pages/_app.tsx
+++ b/frontend/src/pages/_app.tsx
@@ -1,14 +1,18 @@
-import React from 'react'
-import { Provider } from 'react-redux'
import { HeroUIProvider } from '@heroui/react'
+import { ThemeProvider as NextThemesProvider } from 'next-themes'
import { AppProps } from 'next/app'
+import Head from 'next/head'
+import React from 'react'
+import { Provider } from 'react-redux'
import store from '../store/store'
import '../styles/globals.css'
-import { ThemeProvider as NextThemesProvider } from 'next-themes'
const MyApp: React.FC = ({ Component, pageProps }) => {
return (
+
+
+