Website/astro.config.mjs

76 Zeilen
2.8 KiB
JavaScript

import {defineConfig, sharpImageService} from "astro/config";
import svelte from "@astrojs/svelte";
import tailwind from "@astrojs/tailwind";
import configureI18n from "./astro-i18n.adapter";
import sitemap from "@astrojs/sitemap";
import robotsTxt from "astro-robots-txt";
import {resolve} from "node:url";
import path from "node:path";
import mdx from "@astrojs/mdx";
import pagefind from "astro-pagefind";
// https://astro.build/config
export default defineConfig({
output: "static",
image: {
service: sharpImageService(),
domains: [ "vzge.me" ]
},
compressHTML: true,
site: "https://steamwar.de",
integrations: [
svelte(),
tailwind({
configFile: "./tailwind.config.cjs",
}),
pagefind(),
configureI18n(),
sitemap({
i18n: {
defaultLocale: "en", locales: {
en: "en-US", de: "de-DE",
},
},
}),
robotsTxt({
policy: [
{ userAgent: "*", disallow: ["/admin", "/login", "/dashboard", "/de", "/_astro"] },
{ userAgent: "anthropic-ai", disallow: "/" },
{ userAgent: "Applebot-Extended", disallow: "/" },
{ userAgent: "Bytespider", disallow: "/" },
{ userAgent: "CCBot", disallow: "/" },
{ userAgent: "ChatGPT-User", disallow: "/" },
{ userAgent: "ClaudeBot", disallow: "/" },
{ userAgent: "Claude-Web", disallow: "/" },
{ userAgent: "cohere-ai", disallow: "/" },
{ userAgent: "Diffbot", disallow: "/" },
{ userAgent: "FacebookBot", disallow: "/" },
{ userAgent: "GPTBot", disallow: "/" },
{ userAgent: "ImagesiftBot", disallow: "/" },
{ userAgent: "Meta-ExternalAgent", disallow: "/" },
{ userAgent: "Meta-ExternalFetcher", disallow: "/" },
{ userAgent: "omgili", disallow: "/" },
{ userAgent: "OmigliBot", disallow: "/" },
{ userAgent: "PerplexityBot", disallow: "/" },
{ userAgent: "Timpibot", disallow: "/" }
],
}),
mdx(),
],
vite: {
resolve: {
alias: {
"@components": path.resolve("./src/components"),
"@pages": path.resolve("./src/pages"),
"@styles": path.resolve("./src/styles"),
"@utils": path.resolve("./src/util"),
"@type": path.resolve("./src/components/types"),
"@images": path.resolve("./src/images"),
"@layouts": path.resolve("./src/layouts"),
"@repo": path.resolve("./src/components/repo"),
"@stores": path.resolve("./src/components/stores"),
},
},
},
});