Skip to content

Commit 4421616

Browse files
authored
Merge branch 'main' into feat/remote-weaviate-filters
2 parents b6687df + edc170e commit 4421616

15 files changed

Lines changed: 1116 additions & 50 deletions

File tree

.github/workflows/desktop-publish.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,10 @@ jobs:
5858
- name: Setup uv
5959
uses: astral-sh/setup-uv@v4
6060

61+
- name: Install CPU-only PyTorch (Linux)
62+
if: matrix.platform == 'ubuntu-22.04'
63+
run: uv pip install torch --index-url https://download.pytorch.org/whl/cpu --system
64+
6165
- name: Install backend dependencies
6266
run: uv pip install -e "backend/.[build,libs]" --system
6367

@@ -103,7 +107,6 @@ jobs:
103107
TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }}
104108
TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }}
105109
TAURI_BUNDLER_DMG_IGNORE_CI: "true"
106-
APPIMAGE_EXTRACT_AND_RUN: "1"
107110
with:
108111
tagName: v__VERSION__ # the action automatically replaces \_\_VERSION\_\_ with the app version.
109112
releaseName: "Release v__VERSION__"

backend/syft-space-backend.spec

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ exe = EXE(
7777
name='syft-space-backend',
7878
debug=False,
7979
bootloader_ignore_signals=False,
80-
strip=False,
80+
strip=True,
8181
upx=True,
8282
upx_exclude=[],
8383
console=True,
@@ -92,7 +92,7 @@ coll = COLLECT(
9292
exe,
9393
a.binaries,
9494
a.datas,
95-
strip=False,
95+
strip=True,
9696
upx=True,
9797
upx_exclude=[],
9898
name='syft-space-backend',

frontend/src/App.vue

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,13 +43,15 @@ onUnmounted(() => {
4343
const serverStore = useServerAvailabilityStore()
4444
4545
const isUpdatesPage = computed(() => route.name === 'updates')
46+
const isAboutPage = computed(() => route.name === 'about')
4647
4748
const showNavbar = computed(
4849
() =>
4950
route.name !== 'create' &&
5051
!route.path.startsWith('/create/') &&
5152
!route.path.startsWith('/experimental') &&
5253
!isUpdatesPage.value &&
54+
!isAboutPage.value &&
5355
route.name !== 'onboarding',
5456
)
5557
@@ -69,7 +71,7 @@ watch(
6971
</script>
7072

7173
<template>
72-
<SplashScreen v-if="!serverStore.isReady && !isUpdatesPage" :is-slow="serverStore.isSlow" />
74+
<SplashScreen v-if="!serverStore.isReady && !isUpdatesPage && !isAboutPage" :is-slow="serverStore.isSlow" />
7375
<div v-else class="min-h-screen bg-background text-foreground">
7476
<AppNavbar v-if="showNavbar" />
7577

frontend/src/pages/AboutPage.vue

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
<template>
2+
<div class="flex h-screen w-full select-none overflow-hidden">
3+
<div class="relative flex w-full flex-col items-center justify-center gap-5 p-8">
4+
<BackgroundGradients class="absolute top-0 left-0 h-full w-full" />
5+
<div data-tauri-drag-region class="absolute top-0 right-0 bottom-0 left-0 z-0"></div>
6+
7+
<div data-tauri-drag-region class="relative z-10 flex flex-col items-center">
8+
<IconGhost :width="72" :height="72" />
9+
<h1 class="mt-3 text-2xl font-bold text-gray-800">Syft Space</h1>
10+
</div>
11+
12+
<div data-tauri-drag-region class="relative z-10 flex flex-col items-center gap-1 text-center text-sm text-gray-500">
13+
<p>Version {{ version }}</p>
14+
<p>Built by <span class="font-medium text-gray-700">OpenMined</span></p>
15+
<a
16+
href="https://github.com/OpenMined/syft-space"
17+
class="mt-1 inline-flex items-center gap-1 text-xs text-gray-500 transition-colors hover:text-gray-700"
18+
>
19+
<ExternalLink class="h-3 w-3" />
20+
github.com/OpenMined/syft-space
21+
</a>
22+
</div>
23+
24+
<div class="relative z-10">
25+
<button
26+
class="rounded-md border border-gray-400/50 bg-white/40 px-6 py-1.5 text-sm font-medium text-gray-700 backdrop-blur-sm transition-colors hover:bg-white/60"
27+
@click="closeWindow"
28+
>
29+
Close
30+
</button>
31+
</div>
32+
</div>
33+
</div>
34+
</template>
35+
36+
<script setup lang="ts">
37+
import { ref, onMounted } from 'vue'
38+
import { ExternalLink } from 'lucide-vue-next'
39+
import BackgroundGradients from '@/components/logo/BackgroundGradients.vue'
40+
import IconGhost from '@/components/logo/IconGhost.vue'
41+
42+
const version = ref('dev')
43+
44+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
45+
const tauri = (window as any).__TAURI__ as
46+
| {
47+
core: { invoke: <T>(cmd: string, args?: Record<string, unknown>) => Promise<T> }
48+
window: { getCurrentWindow: () => { close: () => void } }
49+
}
50+
| undefined
51+
52+
onMounted(async () => {
53+
if (tauri) {
54+
try {
55+
version.value = await tauri.core.invoke<string>('plugin:app|version')
56+
} catch {
57+
// keep fallback
58+
}
59+
}
60+
})
61+
62+
const closeWindow = () => {
63+
if (tauri) {
64+
tauri.window.getCurrentWindow().close()
65+
}
66+
}
67+
</script>

frontend/src/router/index.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import ModelDetailPage from '../pages/ModelDetailPage.vue'
1212
import CreateDataEndpointPage from '../pages/CreateDataEndpointPage.vue'
1313
import CreateModelEndpointPage from '../pages/CreateModelEndpointPage.vue'
1414
import UpdatesPage from '../pages/UpdatesPage.vue'
15+
import AboutPage from '../pages/AboutPage.vue'
1516
import OnboardingPage from '../pages/OnboardingPage.vue'
1617
import ExperimentalRemoteWeaviateDatasetPage from '../pages/ExperimentalRemoteWeaviateDatasetPage.vue'
1718
import { marketplacesApi } from '../api/endpoints/marketplaces'
@@ -109,6 +110,11 @@ const router = createRouter({
109110
name: 'updates',
110111
component: UpdatesPage,
111112
},
113+
{
114+
path: '/about',
115+
name: 'about',
116+
component: AboutPage,
117+
},
112118
{
113119
path: '/onboarding',
114120
name: 'onboarding',
@@ -145,8 +151,8 @@ router.beforeEach(async (to, _from, next) => {
145151
return
146152
}
147153

148-
// Skip server readiness and onboarding checks for the updates page
149-
if (to.name === 'updates') {
154+
// Skip server readiness and onboarding checks for standalone windows
155+
if (to.name === 'updates' || to.name === 'about') {
150156
next()
151157
return
152158
}

0 commit comments

Comments
 (0)