ghostguild-org/nuxt.config.ts
Jennie Robinson Faber 8a529a8e7c Add OIDC provider for Outline wiki SSO
Add oidc-provider with MongoDB adapter so ghostguild.org can act as
the identity provider for the self-hosted Outline wiki. Members
authenticate via the existing magic-link flow, with automatic SSO
when an active session exists. Includes interaction routes, well-known
discovery endpoint, and login page.
2026-03-01 15:46:01 +00:00

37 lines
1.5 KiB
TypeScript

// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
compatibilityDate: "2025-07-15",
devtools: { enabled: process.env.NODE_ENV !== 'production' },
modules: ["@nuxt/eslint", "@nuxt/ui", "@nuxtjs/plausible"],
build: {
transpile: ["vue-cal"],
},
plausible: {
domain: "ghostguild.org",
},
css: ["~/assets/css/main.css"],
runtimeConfig: {
// Private keys (server-side only)
mongodbUri:
process.env.MONGODB_URI || "mongodb://localhost:27017/ghostguild",
jwtSecret: process.env.JWT_SECRET || "",
resendApiKey: process.env.RESEND_API_KEY || "",
helcimApiToken: process.env.HELCIM_API_TOKEN || "",
slackBotToken: process.env.SLACK_BOT_TOKEN || "",
slackSigningSecret: process.env.SLACK_SIGNING_SECRET || "",
slackVettingChannelId: process.env.SLACK_VETTING_CHANNEL_ID || "",
oidcClientId: process.env.OIDC_CLIENT_ID || "outline-wiki",
oidcClientSecret: process.env.OIDC_CLIENT_SECRET || "",
oidcCookieSecret: process.env.OIDC_COOKIE_SECRET || "",
// Public keys (available on client-side)
public: {
helcimToken: process.env.NUXT_PUBLIC_HELCIM_TOKEN || "",
helcimAccountId: process.env.NUXT_PUBLIC_HELCIM_ACCOUNT_ID || "",
cloudinaryCloudName:
process.env.NUXT_PUBLIC_CLOUDINARY_CLOUD_NAME || "divzuumlr",
appUrl: process.env.NUXT_PUBLIC_APP_URL || "http://localhost:3000",
comingSoon: process.env.NUXT_PUBLIC_COMING_SOON || "false",
},
},
});