// @ts-check import mdx from '@astrojs/mdx'; import sitemap from '@astrojs/sitemap'; import { defineConfig, fontProviders } from 'astro/config'; import { loadEnv } from 'vite'; import node from '@astrojs/node'; const envMode = process.env.NODE_ENV === 'production' ? 'production' : 'development'; const envVars = loadEnv(envMode, process.cwd(), ''); const WEBMENTION_TOKEN = envVars.WEBMENTION_TOKEN || process.env.WEBMENTION_TOKEN || ''; console.log(`[astro.config] loadEnv mode=${envMode} token-len=${WEBMENTION_TOKEN.length}`); // https://astro.build/config export default defineConfig({ site: 'https://adrian-altner.de', vite: { define: { 'globalThis.__WEBMENTION_TOKEN__': JSON.stringify(WEBMENTION_TOKEN), }, }, devToolbar: { enabled: false, }, i18n: { defaultLocale: 'de', locales: ['de', 'en'], routing: { prefixDefaultLocale: false, redirectToDefaultLocale: false, }, }, integrations: [ mdx(), sitemap({ i18n: { defaultLocale: 'de', locales: { de: 'de-DE', en: 'en-US' }, }, }), ], fonts: [ { provider: fontProviders.local(), name: 'Atkinson', cssVariable: '--font-atkinson', fallbacks: ['sans-serif'], options: { variants: [ { src: ['./src/assets/fonts/atkinson-regular.woff'], weight: 400, style: 'normal', display: 'swap', }, { src: ['./src/assets/fonts/atkinson-bold.woff'], weight: 700, style: 'normal', display: 'swap', }, ], }, }, ], adapter: node({ mode: 'standalone', }), });