// @ts-check import mdx from '@astrojs/mdx'; import sitemap from '@astrojs/sitemap'; import { defineConfig, fontProviders } from 'astro/config'; import { loadEnv } from 'vite'; import avatarCacheSweep from './src/integrations/avatar-cache-sweep'; 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 || ''; // 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' }, }, }), avatarCacheSweep(), ], fonts: [ { provider: fontProviders.local(), name: 'Maple Mono', cssVariable: '--font-maple-mono', fallbacks: ['ui-monospace', 'SFMono-Regular', 'Menlo', 'monospace'], options: { variants: [ { src: ['./src/assets/fonts/MapleMono[wght]-VF.woff2'], weight: '100 800', style: 'normal', display: 'swap', }, { src: ['./src/assets/fonts/MapleMono-Italic[wght]-VF.woff2'], weight: '100 800', style: 'italic', display: 'swap', }, ], }, }, ], });