mirror of
https://github.com/jorgev259/soc_site-astro.git
synced 2025-06-29 07:57:41 +00:00
68 lines
2.6 KiB
JavaScript
68 lines
2.6 KiB
JavaScript
// @ts-check
|
|
import { defineConfig, envField } from 'astro/config'
|
|
import tailwindcss from '@tailwindcss/vite'
|
|
import node from '@astrojs/node'
|
|
import react from '@astrojs/react'
|
|
import paraglide from '@inlang/paraglide-astro'
|
|
import icon from 'astro-icon'
|
|
|
|
import { languageTags } from './project.inlang/settings.json'
|
|
|
|
// https://astro.build/config
|
|
export default defineConfig({
|
|
env: {
|
|
schema: {
|
|
MAILSERVER: envField.string({ context: 'server', access: 'secret' }),
|
|
BETTER_AUTH_SECRET: envField.string({ context: 'server', access: 'secret' }),
|
|
DATABASE_URL: envField.string({ context: 'server', access: 'secret' }),
|
|
BETTER_AUTH_URL: envField.string({
|
|
context: 'server',
|
|
access: 'public',
|
|
optional: true,
|
|
default: 'http://localhost:4321'
|
|
}),
|
|
WEBHOOK_URL: envField.string({ context: 'server', access: 'secret' }),
|
|
DISCORD_OAUTH_ID: envField.string({ context: 'server', access: 'public' }),
|
|
DISCORD_OAUTH_SECRET: envField.string({ context: 'server', access: 'secret' }),
|
|
DISCORD_GUILD_ID: envField.string({ context: 'server', access: 'public' }),
|
|
DISCORD_DONATOR_ID: envField.string({ context: 'server', access: 'public' })
|
|
},
|
|
validateSecrets: true
|
|
},
|
|
site: 'https://sittingonclouds.net',
|
|
i18n: {
|
|
locales: languageTags,
|
|
defaultLocale: 'en',
|
|
routing: {
|
|
prefixDefaultLocale: false,
|
|
redirectToDefaultLocale: true
|
|
}
|
|
},
|
|
integrations: [
|
|
paraglide({ project: './project.inlang', outdir: './src/paraglide' }),
|
|
icon({ iconDir: 'src/img/icons' }),
|
|
react()
|
|
],
|
|
vite: { plugins: [tailwindcss()] },
|
|
image: { domains: ['cdn.sittingonclouds.net'] },
|
|
output: 'server',
|
|
adapter: node({ mode: 'standalone' }),
|
|
redirects: {
|
|
'/en/[...params]': '/[...params]',
|
|
'/anim/[id]': { status: 307, destination: '/maintenance' },
|
|
'/anim/list': { status: 307, destination: '/maintenance' },
|
|
'/game/[slug]': { status: 307, destination: '/maintenance' },
|
|
'/platform/list': { status: 307, destination: '/maintenance' },
|
|
'/platform/[id]': { status: 307, destination: '/maintenance' },
|
|
'/profile': { status: 307, destination: '/maintenance' },
|
|
'/profile/[username]': { status: 307, destination: '/maintenance' },
|
|
'/series/[slug]': { status: 307, destination: '/maintenance' },
|
|
'/series/list': { status: 307, destination: '/maintenance' },
|
|
'/studio/[slug]': { status: 307, destination: '/maintenance' },
|
|
'/studio/list': { status: 307, destination: '/maintenance' },
|
|
'/request': { status: 307, destination: '/maintenance' }
|
|
},
|
|
security: {
|
|
checkOrigin: false
|
|
}
|
|
})
|