diff --git a/astro.config.mjs b/astro.config.mjs index 565e95b..536634d 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -4,13 +4,15 @@ import vue from '@astrojs/vue' import tailwind from '@astrojs/tailwind' +import sitemap from '@astrojs/sitemap'; + // https://astro.build/config export default defineConfig({ - integrations: [vue(), tailwind()], - output: 'server', - adapter: cloudflare({ - platformProxy: { - enabled: true - } - }) -}) + integrations: [vue(), tailwind(), sitemap()], + output: 'server', + adapter: cloudflare({ + platformProxy: { + enabled: true + } + }) +}) \ No newline at end of file diff --git a/package.json b/package.json index 944cfc1..d5e34a8 100644 --- a/package.json +++ b/package.json @@ -12,6 +12,7 @@ "dependencies": { "@astrojs/check": "^0.9.4", "@astrojs/cloudflare": "^11.2.0", + "@astrojs/sitemap": "^3.4.1", "@astrojs/tailwind": "^5.1.5", "@astrojs/vue": "^4.5.3", "@octokit/core": "^6.1.5", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 73a7665..4902788 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -14,6 +14,9 @@ importers: '@astrojs/cloudflare': specifier: ^11.2.0 version: 11.2.0(astro@4.16.18(@types/node@22.3.0)(rollup@4.44.2)(typescript@5.8.3)) + '@astrojs/sitemap': + specifier: ^3.4.1 + version: 3.4.1 '@astrojs/tailwind': specifier: ^5.1.5 version: 5.1.5(astro@4.16.18(@types/node@22.3.0)(rollup@4.44.2)(typescript@5.8.3))(tailwindcss@3.4.17) @@ -94,6 +97,9 @@ packages: resolution: {integrity: sha512-Z9IYjuXSArkAUx3N6xj6+Bnvx8OdUSHA8YoOgyepp3+zJmtVYJIl/I18GozdJVW1p5u/CNpl3Km7/gwTJK85cw==} engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} + '@astrojs/sitemap@3.4.1': + resolution: {integrity: sha512-VjZvr1e4FH6NHyyHXOiQgLiw94LnCVY4v06wN/D0gZKchTMkg71GrAHJz81/huafcmavtLkIv26HnpfDq6/h/Q==} + '@astrojs/tailwind@5.1.5': resolution: {integrity: sha512-1diguZEau7FZ9vIjzE4BwavGdhD3+JkdS8zmibl1ene+EHgIU5hI0NMgRYG3yea+Niaf7cyMwjeWeLvzq/maxg==} peerDependencies: @@ -976,9 +982,15 @@ packages: '@types/nlcst@2.0.3': resolution: {integrity: sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==} + '@types/node@17.0.45': + resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} + '@types/node@22.3.0': resolution: {integrity: sha512-nrWpWVaDZuaVc5X84xJ0vNrLvomM205oQyLsRt7OHNZbSHslcWsvgFR7O7hire2ZonjLrWBbedmotmIlJDVd6g==} + '@types/sax@1.2.7': + resolution: {integrity: sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==} + '@types/unist@3.0.3': resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} @@ -2390,6 +2402,9 @@ packages: sass-formatter@0.7.9: resolution: {integrity: sha512-CWZ8XiSim+fJVG0cFLStwDvft1VI7uvXdCNJYXhDvowiv+DsbD1nXLiQ4zrE5UBvj5DWZJ93cwN0NX5PMsr1Pw==} + sax@1.4.1: + resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} + section-matter@1.0.0: resolution: {integrity: sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==} engines: {node: '>=4'} @@ -2432,6 +2447,11 @@ packages: sisteransi@1.0.5: resolution: {integrity: sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==} + sitemap@8.0.0: + resolution: {integrity: sha512-+AbdxhM9kJsHtruUF39bwS/B0Fytw6Fr1o4ZAIAEqA6cke2xcoO2GleBw9Zw7nRzILVEgz7zBM5GiTJjie1G9A==} + engines: {node: '>=14.0.0', npm: '>=6.0.0'} + hasBin: true + source-map-js@1.2.1: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} @@ -2465,6 +2485,9 @@ packages: resolution: {integrity: sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==} engines: {node: '>=4', npm: '>=6'} + stream-replace-string@2.0.0: + resolution: {integrity: sha512-TlnjJ1C0QrmxRNrON00JvaFFlNh5TTG00APw23j74ET7gkQpTASi6/L2fuiav8pzK715HXtUeClpBTw2NPSn6w==} + string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} @@ -3051,6 +3074,12 @@ snapshots: dependencies: prismjs: 1.30.0 + '@astrojs/sitemap@3.4.1': + dependencies: + sitemap: 8.0.0 + stream-replace-string: 2.0.0 + zod: 3.25.75 + '@astrojs/tailwind@5.1.5(astro@4.16.18(@types/node@22.3.0)(rollup@4.44.2)(typescript@5.8.3))(tailwindcss@3.4.17)': dependencies: astro: 4.16.18(@types/node@22.3.0)(rollup@4.44.2)(typescript@5.8.3) @@ -3832,10 +3861,15 @@ snapshots: dependencies: '@types/unist': 3.0.3 + '@types/node@17.0.45': {} + '@types/node@22.3.0': dependencies: undici-types: 6.18.2 - optional: true + + '@types/sax@1.2.7': + dependencies: + '@types/node': 22.3.0 '@types/unist@3.0.3': {} @@ -5581,6 +5615,8 @@ snapshots: dependencies: suf-log: 2.5.3 + sax@1.4.1: {} + section-matter@1.0.0: dependencies: extend-shallow: 2.0.1 @@ -5649,6 +5685,13 @@ snapshots: sisteransi@1.0.5: {} + sitemap@8.0.0: + dependencies: + '@types/node': 17.0.45 + '@types/sax': 1.2.7 + arg: 5.0.2 + sax: 1.4.1 + source-map-js@1.2.1: {} source-map@0.6.1: {} @@ -5670,6 +5713,8 @@ snapshots: stoppable@1.1.0: {} + stream-replace-string@2.0.0: {} + string-width@4.2.3: dependencies: emoji-regex: 8.0.0 @@ -5801,8 +5846,7 @@ snapshots: ufo@1.6.1: {} - undici-types@6.18.2: - optional: true + undici-types@6.18.2: {} undici@5.29.0: dependencies: diff --git a/public/about.txt b/public/about.txt new file mode 100644 index 0000000..0ace46c --- /dev/null +++ b/public/about.txt @@ -0,0 +1,6 @@ +This favicon was generated using the following font: + +- Font Title: IBM Plex Sans JP +- Font Author: undefined +- Font Source: https://fonts.gstatic.com/s/ibmplexsansjp/v6/Z9XKDn9KbTDf6_f7dISNqYf_tvPT7N7RrNpVuw5_BAM.ttf +- Font License: undefined) diff --git a/public/android-chrome-192x192.png b/public/android-chrome-192x192.png new file mode 100644 index 0000000..102fa82 Binary files /dev/null and b/public/android-chrome-192x192.png differ diff --git a/public/android-chrome-512x512.png b/public/android-chrome-512x512.png new file mode 100644 index 0000000..ec777eb Binary files /dev/null and b/public/android-chrome-512x512.png differ diff --git a/public/apple-touch-icon.png b/public/apple-touch-icon.png new file mode 100644 index 0000000..687e275 Binary files /dev/null and b/public/apple-touch-icon.png differ diff --git a/public/favicon-16x16.png b/public/favicon-16x16.png new file mode 100644 index 0000000..79b2f56 Binary files /dev/null and b/public/favicon-16x16.png differ diff --git a/public/favicon-32x32.png b/public/favicon-32x32.png new file mode 100644 index 0000000..7f5f937 Binary files /dev/null and b/public/favicon-32x32.png differ diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000..6a9a82c Binary files /dev/null and b/public/favicon.ico differ diff --git a/public/favicon.svg b/public/favicon.svg deleted file mode 100644 index f157bd1..0000000 --- a/public/favicon.svg +++ /dev/null @@ -1,9 +0,0 @@ - diff --git a/public/site.webmanifest b/public/site.webmanifest new file mode 100644 index 0000000..45dc8a2 --- /dev/null +++ b/public/site.webmanifest @@ -0,0 +1 @@ +{"name":"","short_name":"","icons":[{"src":"/android-chrome-192x192.png","sizes":"192x192","type":"image/png"},{"src":"/android-chrome-512x512.png","sizes":"512x512","type":"image/png"}],"theme_color":"#ffffff","background_color":"#ffffff","display":"standalone"} \ No newline at end of file diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro index edb8f5e..34184b5 100644 --- a/src/layouts/Layout.astro +++ b/src/layouts/Layout.astro @@ -13,13 +13,39 @@ let activePage = `${Astro.url.pathname}`
- - - + + + + + + + + + + + + + + + + + + +