Files
Website/astro.config.mjs
Chaoscaot 1b48cbe1f4
All checks were successful
SteamWarCI Build successful
Update edit link base URL to point to the master branch
2025-07-10 13:51:09 +02:00

102 lines
4.0 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 path from "node:path";
import mdx from "@astrojs/mdx";
import starlight from "@astrojs/starlight";
// https://astro.build/config
export default defineConfig({
output: "static",
image: {
service: sharpImageService(),
},
compressHTML: true,
site: "https://steamwar.de",
integrations: [
svelte(),
starlight({
disable404Route: true,
title: "SteamWar Docs",
defaultLocale: "de",
logo: {
src: "./src/images/logo.png",
},
social: [
{ icon: "discord", label: "Discord", href: "https://steamwar.de/discord" },
{ icon: "document", label: "Gitea", href: "https://git.steamwar.de" },
],
sidebar: [
{ label: "Startseite", slug: "docs" },
{ label: "Bau", badge: "WIP", items: ["docs/bausystem", { label: "Script System", items: ["docs/bausystem/script"] }] },
{ label: "Kampfsystem", badge: "WIP", items: ["docs/fightsystem"] },
{ label: "Minigames", badge: "WIP", items: ["docs/minigames"] },
{ label: "Schematicsystem", badge: "WIP", items: ["docs/schematicsystem"] },
{ label: "API", badge: "WIP", items: ["docs/api"] },
],
editLink: {
baseUrl: "https://git.steamwar.de/SteamWar/Website/src/branch/master/",
},
}),
tailwind({
configFile: "./tailwind.config.js",
applyBaseStyles: false,
}),
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"),
$lib: path.resolve("./src"),
},
},
},
});