feat: prepare supporter self-hosting

This commit is contained in:
Carl-Gerhard Lindesvärd
2025-10-22 09:36:53 +02:00
parent f958230a66
commit 9790ba8937
19 changed files with 2647 additions and 115 deletions

View File

@@ -30,6 +30,7 @@ interface MyRouterContext {
trpc: TRPCOptionsProxy<AppRouter>;
apiUrl: string;
dashboardUrl: string;
isSelfHosted: boolean;
}
export const Route = createRootRouteWithContext<MyRouterContext>()({

View File

@@ -0,0 +1,19 @@
import { Sidebar } from '@/components/sidebar';
import { getServerEnvs } from '@/server/get-envs';
import { Outlet, createFileRoute, redirect } from '@tanstack/react-router';
// Nothing sensitive here, its client environment variables which is good for debugging
export const Route = createFileRoute('/api/config')({
server: {
handlers: {
GET: async () => {
const envs = await getServerEnvs();
return new Response(JSON.stringify(envs), {
headers: {
'Content-Type': 'application/json',
},
});
},
},
},
});

View File

@@ -0,0 +1,11 @@
import { createFileRoute } from '@tanstack/react-router';
export const Route = createFileRoute('/api/healthcheck')({
server: {
handlers: {
GET: async () => {
return new Response('OK');
},
},
},
});