diff --git a/astro.config.mjs b/astro.config.mjs
index fd157f9..a4b287a 100644
--- a/astro.config.mjs
+++ b/astro.config.mjs
@@ -1,12 +1,23 @@
import { defineConfig } from "astro/config";
-
import node from "@astrojs/node";
+import sitemap from "@astrojs/sitemap";
+
// https://astro.build/config
export default defineConfig({
- integrations: [],
+ site: "https://aluu.xyz",
+ integrations: [sitemap({
+ lastmod: new Date(),
+ i18n: {
+ locales: {
+ en: "en-US",
+ jp: "ja-JP",
+ },
+ defaultLocale: "en"
+ }
+ })],
output: "hybrid",
adapter: node({
- mode: "middleware",
- }),
-});
+ mode: "middleware"
+ })
+});
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index 167cb19..2863f93 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9,6 +9,7 @@
"version": "0.0.1",
"dependencies": {
"@astrojs/node": "^8.2.5",
+ "@astrojs/sitemap": "^3.1.2",
"@mercuryworkshop/bare-mux": "^1.0.5",
"@mercuryworkshop/epoxy-transport": "^1.1.0",
"@mercuryworkshop/libcurl-transport": "^1.3.1",
@@ -113,6 +114,15 @@
"node": ">=18.14.1"
}
},
+ "node_modules/@astrojs/sitemap": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@astrojs/sitemap/-/sitemap-3.1.2.tgz",
+ "integrity": "sha512-FxOJldIl5ltZ5CNjocQxHkAO9orwHBjqtaU28o4smobp9vowS0nbGp+I9CrPxkzWdl1crSDm9vjL9tnvG1DSug==",
+ "dependencies": {
+ "sitemap": "^7.1.1",
+ "zod": "^3.22.4"
+ }
+ },
"node_modules/@astrojs/telemetry": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-3.0.4.tgz",
@@ -1709,6 +1719,14 @@
"@types/node": "*"
}
},
+ "node_modules/@types/sax": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.7.tgz",
+ "integrity": "sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==",
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
"node_modules/@types/semver": {
"version": "7.5.8",
"resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz",
@@ -2154,6 +2172,11 @@
"node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
+ "node_modules/arg": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
+ "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg=="
+ },
"node_modules/argparse": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
@@ -8392,6 +8415,11 @@
"suf-log": "^2.5.3"
}
},
+ "node_modules/sax": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz",
+ "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA=="
+ },
"node_modules/section-matter": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz",
@@ -8671,6 +8699,29 @@
"resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
"integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg=="
},
+ "node_modules/sitemap": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz",
+ "integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==",
+ "dependencies": {
+ "@types/node": "^17.0.5",
+ "@types/sax": "^1.2.1",
+ "arg": "^5.0.0",
+ "sax": "^1.2.4"
+ },
+ "bin": {
+ "sitemap": "dist/cli.js"
+ },
+ "engines": {
+ "node": ">=12.0.0",
+ "npm": ">=5.6.0"
+ }
+ },
+ "node_modules/sitemap/node_modules/@types/node": {
+ "version": "17.0.45",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz",
+ "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw=="
+ },
"node_modules/slash": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
diff --git a/package.json b/package.json
index e2bd7de..21f4950 100644
--- a/package.json
+++ b/package.json
@@ -12,6 +12,7 @@
},
"dependencies": {
"@astrojs/node": "^8.2.5",
+ "@astrojs/sitemap": "^3.1.2",
"@mercuryworkshop/bare-mux": "^1.0.5",
"@mercuryworkshop/epoxy-transport": "^1.1.0",
"@mercuryworkshop/libcurl-transport": "^1.3.1",
diff --git a/public/robots-allow.txt b/public/robots-allow.txt
index f31bce4..c01360a 100644
--- a/public/robots-allow.txt
+++ b/public/robots-allow.txt
@@ -1,2 +1,3 @@
User-agent: *
-Allow: *
\ No newline at end of file
+Allow: *
+Sitemap: https://aluu.xyz/sitemap-index.xml
\ No newline at end of file
diff --git a/public/sitemap.xml b/public/sitemap.xml
deleted file mode 100644
index 300e40a..0000000
--- a/public/sitemap.xml
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
-
- https://aluu.xyz/en/
- 2024-04-03T02:13:11+00:00
- 1.00
-
-
- https://aluu.xyz/en/games/
- 2024-04-03T02:13:11+00:00
- 0.80
-
-
- https://aluu.xyz/en/settings/
- 2024-04-03T02:13:11+00:00
- 0.80
-
-
- https://aluu.xyz/jp/
- 2024-04-03T02:13:11+00:00
- 1.00
-
-
- https://aluu.xyz/jp/games/
- 2024-04-03T02:13:11+00:00
- 0.80
-
-
- https://aluu.xyz/jp/settings/
- 2024-04-03T02:13:11+00:00
- 0.80
-
-
-
-
\ No newline at end of file
diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro
index a2060a2..6e31b32 100644
--- a/src/layouts/Layout.astro
+++ b/src/layouts/Layout.astro
@@ -51,6 +51,7 @@ const { title, optionalPreloads } = Astro.props;
+