- public/manifest.webmanifest with any + maskable icons (192/512) - generated inbox-glyph icons in app palette, apple-touch-icon - minimal no-cache service worker for installability; registered via client plugin - head: manifest/icon links, mobile-web-app-capable Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
45 lines
2.1 KiB
TypeScript
45 lines
2.1 KiB
TypeScript
export default defineNuxtConfig({
|
|
compatibilityDate: "2026-06-10",
|
|
ssr: false,
|
|
devtools: { enabled: false },
|
|
// Single-user private inbox: no SSR/SEO needs; SPA so @kuns/zitadel-auth runs in-browser.
|
|
runtimeConfig: {
|
|
// Server-only config is read directly from process.env at runtime (see server/utils),
|
|
// so it is NOT declared here (Nuxt only overrides runtimeConfig via the NUXT_ prefix).
|
|
public: {
|
|
zitadelIssuer: process.env.NUXT_PUBLIC_ZITADEL_ISSUER || "https://auth.kuns.dev",
|
|
zitadelClientId: process.env.NUXT_PUBLIC_ZITADEL_CLIENT_ID || "",
|
|
// Optional: Zitadel project id. When set, the login requests the project-audience
|
|
// scope so the access token's `aud` includes the project id (robust API validation).
|
|
zitadelProjectId: process.env.NUXT_PUBLIC_ZITADEL_PROJECT_ID || "",
|
|
},
|
|
},
|
|
app: {
|
|
head: {
|
|
title: "ClaudeDo Inbox",
|
|
htmlAttrs: { lang: "en" },
|
|
meta: [
|
|
{ name: "viewport", content: "width=device-width, initial-scale=1, viewport-fit=cover" },
|
|
{ name: "color-scheme", content: "light dark" },
|
|
{ name: "theme-color", media: "(prefers-color-scheme: light)", content: "#f4f1ea" },
|
|
{ name: "theme-color", media: "(prefers-color-scheme: dark)", content: "#181410" },
|
|
{ name: "mobile-web-app-capable", content: "yes" },
|
|
{ name: "apple-mobile-web-app-capable", content: "yes" },
|
|
{ name: "apple-mobile-web-app-status-bar-style", content: "default" },
|
|
{ name: "apple-mobile-web-app-title", content: "ClaudeDo" },
|
|
],
|
|
link: [
|
|
{ rel: "manifest", href: "/manifest.webmanifest" },
|
|
{ rel: "apple-touch-icon", href: "/icons/apple-touch-icon.png" },
|
|
{ rel: "icon", type: "image/png", sizes: "192x192", href: "/icons/icon-192.png" },
|
|
{ rel: "preconnect", href: "https://fonts.googleapis.com" },
|
|
{ rel: "preconnect", href: "https://fonts.gstatic.com", crossorigin: "" },
|
|
{
|
|
rel: "stylesheet",
|
|
href: "https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,600&family=Spline+Sans:wght@400;500;600&display=swap",
|
|
},
|
|
],
|
|
},
|
|
},
|
|
});
|