docs(website): add updates guide for daemon and apps

This commit is contained in:
Mohamed Boudra
2026-02-16 11:06:04 +07:00
parent 52b3001111
commit 7008803800
4 changed files with 115 additions and 0 deletions
+21
View File
@@ -15,6 +15,7 @@ import { Route as IndexRouteImport } from './routes/index'
import { Route as DocsIndexRouteImport } from './routes/docs/index'
import { Route as DocsWorktreesRouteImport } from './routes/docs/worktrees'
import { Route as DocsVoiceRouteImport } from './routes/docs/voice'
import { Route as DocsUpdatesRouteImport } from './routes/docs/updates'
import { Route as DocsSecurityRouteImport } from './routes/docs/security'
import { Route as DocsConfigurationRouteImport } from './routes/docs/configuration'
import { Route as DocsCliRouteImport } from './routes/docs/cli'
@@ -50,6 +51,11 @@ const DocsVoiceRoute = DocsVoiceRouteImport.update({
path: '/voice',
getParentRoute: () => DocsRoute,
} as any)
const DocsUpdatesRoute = DocsUpdatesRouteImport.update({
id: '/updates',
path: '/updates',
getParentRoute: () => DocsRoute,
} as any)
const DocsSecurityRoute = DocsSecurityRouteImport.update({
id: '/security',
path: '/security',
@@ -79,6 +85,7 @@ export interface FileRoutesByFullPath {
'/docs/cli': typeof DocsCliRoute
'/docs/configuration': typeof DocsConfigurationRoute
'/docs/security': typeof DocsSecurityRoute
'/docs/updates': typeof DocsUpdatesRoute
'/docs/voice': typeof DocsVoiceRoute
'/docs/worktrees': typeof DocsWorktreesRoute
'/docs/': typeof DocsIndexRoute
@@ -90,6 +97,7 @@ export interface FileRoutesByTo {
'/docs/cli': typeof DocsCliRoute
'/docs/configuration': typeof DocsConfigurationRoute
'/docs/security': typeof DocsSecurityRoute
'/docs/updates': typeof DocsUpdatesRoute
'/docs/voice': typeof DocsVoiceRoute
'/docs/worktrees': typeof DocsWorktreesRoute
'/docs': typeof DocsIndexRoute
@@ -103,6 +111,7 @@ export interface FileRoutesById {
'/docs/cli': typeof DocsCliRoute
'/docs/configuration': typeof DocsConfigurationRoute
'/docs/security': typeof DocsSecurityRoute
'/docs/updates': typeof DocsUpdatesRoute
'/docs/voice': typeof DocsVoiceRoute
'/docs/worktrees': typeof DocsWorktreesRoute
'/docs/': typeof DocsIndexRoute
@@ -117,6 +126,7 @@ export interface FileRouteTypes {
| '/docs/cli'
| '/docs/configuration'
| '/docs/security'
| '/docs/updates'
| '/docs/voice'
| '/docs/worktrees'
| '/docs/'
@@ -128,6 +138,7 @@ export interface FileRouteTypes {
| '/docs/cli'
| '/docs/configuration'
| '/docs/security'
| '/docs/updates'
| '/docs/voice'
| '/docs/worktrees'
| '/docs'
@@ -140,6 +151,7 @@ export interface FileRouteTypes {
| '/docs/cli'
| '/docs/configuration'
| '/docs/security'
| '/docs/updates'
| '/docs/voice'
| '/docs/worktrees'
| '/docs/'
@@ -195,6 +207,13 @@ declare module '@tanstack/react-router' {
preLoaderRoute: typeof DocsVoiceRouteImport
parentRoute: typeof DocsRoute
}
'/docs/updates': {
id: '/docs/updates'
path: '/updates'
fullPath: '/docs/updates'
preLoaderRoute: typeof DocsUpdatesRouteImport
parentRoute: typeof DocsRoute
}
'/docs/security': {
id: '/docs/security'
path: '/security'
@@ -231,6 +250,7 @@ interface DocsRouteChildren {
DocsCliRoute: typeof DocsCliRoute
DocsConfigurationRoute: typeof DocsConfigurationRoute
DocsSecurityRoute: typeof DocsSecurityRoute
DocsUpdatesRoute: typeof DocsUpdatesRoute
DocsVoiceRoute: typeof DocsVoiceRoute
DocsWorktreesRoute: typeof DocsWorktreesRoute
DocsIndexRoute: typeof DocsIndexRoute
@@ -241,6 +261,7 @@ const DocsRouteChildren: DocsRouteChildren = {
DocsCliRoute: DocsCliRoute,
DocsConfigurationRoute: DocsConfigurationRoute,
DocsSecurityRoute: DocsSecurityRoute,
DocsUpdatesRoute: DocsUpdatesRoute,
DocsVoiceRoute: DocsVoiceRoute,
DocsWorktreesRoute: DocsWorktreesRoute,
DocsIndexRoute: DocsIndexRoute,
+1
View File
@@ -7,6 +7,7 @@ export const Route = createFileRoute('/docs')({
const navigation = [
{ name: 'Getting started', href: '/docs' },
{ name: 'Updates', href: '/docs/updates' },
{ name: 'Voice', href: '/docs/voice' },
{ name: 'Git worktrees', href: '/docs/worktrees' },
{ name: 'CLI', href: '/docs/cli' },
@@ -101,6 +101,11 @@ function GettingStarted() {
<section className="space-y-4">
<h2 className="text-xl font-medium">Next</h2>
<ul className="text-white/60 space-y-2 list-disc list-inside">
<li>
<a href="/docs/updates" className="underline hover:text-white/80">
Updates
</a>
</li>
<li>
<a href="/docs/voice" className="underline hover:text-white/80">
Voice
@@ -0,0 +1,88 @@
import { createFileRoute } from '@tanstack/react-router'
export const Route = createFileRoute('/docs/updates')({
head: () => ({
meta: [
{ title: 'Updates - Paseo Docs' },
{
name: 'description',
content: 'How to update Paseo daemon and apps across web, desktop, and mobile.',
},
],
}),
component: UpdatesDocs,
})
function UpdatesDocs() {
return (
<div className="space-y-8">
<div>
<h1 className="text-3xl font-medium font-title mb-4">Updates</h1>
<p className="text-white/60 leading-relaxed">
Keep your daemon and apps current to get the latest fixes and features.
</p>
</div>
<section className="space-y-4">
<h2 className="text-xl font-medium">Version compatibility</h2>
<p className="text-white/60">
For now, daemon and app versions should be kept in lockstep. If your daemon is version X,
make sure your clients are also version X.
</p>
</section>
<section className="space-y-4">
<h2 className="text-xl font-medium">Update the daemon</h2>
<p className="text-white/60">Install the latest CLI/daemon package globally:</p>
<div className="bg-card border border-border rounded-lg p-4 font-mono text-sm">
<span className="text-muted-foreground select-none">$ </span>
<span>npm install -g @getpaseo/cli@latest</span>
</div>
<p className="text-white/60">Then restart the daemon:</p>
<div className="bg-card border border-border rounded-lg p-4 font-mono text-sm">
<span className="text-muted-foreground select-none">$ </span>
<span>paseo daemon restart</span>
</div>
</section>
<section className="space-y-4">
<h2 className="text-xl font-medium">Web app</h2>
<p className="text-white/60">
<a
href="https://app.paseo.sh"
target="_blank"
rel="noopener noreferrer"
className="underline hover:text-white/80"
>
app.paseo.sh
</a>{' '}
is always up to date. No manual update needed.
</p>
</section>
<section className="space-y-4">
<h2 className="text-xl font-medium">Desktop app</h2>
<p className="text-white/60">
Download the latest desktop build from the GitHub releases page and install it over your
current version.
</p>
<a
href="https://github.com/getpaseo/paseo/releases"
target="_blank"
rel="noopener noreferrer"
className="underline hover:text-white/80"
>
Paseo releases
</a>
</section>
<section className="space-y-4">
<h2 className="text-xl font-medium">Mobile apps</h2>
<p className="text-white/60">
Mobile apps are not yet publicly available in the App Store or Play Store. We are working
on public store availability.
</p>
</section>
</div>
)
}