From 6832ad549ec22d2284592a0d79b3896d8436cb7c Mon Sep 17 00:00:00 2001 From: Michael Rieger Date: Tue, 16 Sep 2025 19:00:56 +0200 Subject: [PATCH] Done implementing basic stay tuned site with robots.txt and sitemap --- astro.config.mjs | 14 +- package.json | 5 + pnpm-lock.yaml | 475 ++++++++++++++++++++++++++++++ public/assets/img/og-image.jpg | Bin 0 -> 63272 bytes public/favicon.svg | 31 +- src/assets/astro.svg | 1 - src/assets/background.svg | 1 - src/assets/ci/icon-only.svg | 6 +- src/assets/ci/typemark.svg | 41 +++ src/components/Cursor.astro | 8 +- src/components/GlobalStyles.astro | 33 ++- src/components/Header.astro | 10 +- src/components/Hero.astro | 65 ++-- src/layouts/Layout.astro | 69 ++++- src/pages/de/index.astro | 10 - src/pages/imprint.astro | 21 +- src/pages/index.astro | 2 +- src/pages/privacy.astro | 57 ++++ 18 files changed, 772 insertions(+), 77 deletions(-) create mode 100644 public/assets/img/og-image.jpg delete mode 100644 src/assets/astro.svg delete mode 100644 src/assets/background.svg create mode 100644 src/assets/ci/typemark.svg delete mode 100644 src/pages/de/index.astro create mode 100644 src/pages/privacy.astro diff --git a/astro.config.mjs b/astro.config.mjs index bca2345..d00041c 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -1,13 +1,21 @@ // @ts-check -import { defineConfig } from 'astro/config'; +import { defineConfig, passthroughImageService } from 'astro/config'; import vue from '@astrojs/vue'; +import sitemap from "@astrojs/sitemap"; +import robotsTxt from "astro-robots-txt"; +import aiRobotsTxt from "astro-ai-robots-txt"; +import removeComments from "astro-remove-comments"; // https://astro.build/config export default defineConfig({ - integrations: [vue()], + integrations: [vue(), sitemap(), robotsTxt(), aiRobotsTxt(), removeComments()], i18n: { locales: ["en", "de"], defaultLocale: "en" - } + }, + image: { + service: passthroughImageService(), + }, + site: 'https://tideshiftdigital.com', }); \ No newline at end of file diff --git a/package.json b/package.json index ddb072c..8971586 100644 --- a/package.json +++ b/package.json @@ -9,8 +9,13 @@ "astro": "astro" }, "dependencies": { + "@astrojs/sitemap": "^3.5.1", "@astrojs/vue": "^5.1.1", + "@astrolib/seo": "1.0.0-beta.8", "astro": "^5.13.7", + "astro-ai-robots-txt": "^0.1.2", + "astro-remove-comments": "^0.0.1", + "astro-robots-txt": "^1.0.0", "gsap": "^3.13.0", "vue": "^3.5.21" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 53c315a..c9e75a8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,12 +8,27 @@ importers: .: dependencies: + '@astrojs/sitemap': + specifier: ^3.5.1 + version: 3.5.1 '@astrojs/vue': specifier: ^5.1.1 version: 5.1.1(@types/node@24.2.0)(astro@5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2))(rollup@4.46.2)(vue@3.5.21(typescript@5.9.2)) + '@astrolib/seo': + specifier: 1.0.0-beta.8 + version: 1.0.0-beta.8(astro@5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2)) astro: specifier: ^5.13.7 version: 5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2) + astro-ai-robots-txt: + specifier: ^0.1.2 + version: 0.1.2(astro@5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2)) + astro-remove-comments: + specifier: ^0.0.1 + version: 0.0.1(astro@5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2)) + astro-robots-txt: + specifier: ^1.0.0 + version: 1.0.0 gsap: specifier: ^3.13.0 version: 3.13.0 @@ -26,6 +41,9 @@ packages: '@antfu/utils@0.7.10': resolution: {integrity: sha512-+562v9k4aI80m1+VuMHehNJWLOFjBnXn3tdOitzD0il5b7smkSBal4+a3oKiQTbrwMmN/TBUMDvbdoWDehgOww==} + '@asamuzakjp/css-color@3.2.0': + resolution: {integrity: sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==} + '@astrojs/compiler@2.12.2': resolution: {integrity: sha512-w2zfvhjNCkNMmMMOn5b0J8+OmUaBL1o40ipMvqcG6NRpdC+lKxmTi48DT8Xw0SzJ3AfmeFLB45zXZXtmbsjcgw==} @@ -39,6 +57,9 @@ packages: resolution: {integrity: sha512-q8VwfU/fDZNoDOf+r7jUnMC2//H2l0TuQ6FkGJL8vD8nw/q5KiL3DS1KKBI3QhI9UQhpJ5dc7AtqfbXWuOgLCQ==} engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0} + '@astrojs/sitemap@3.5.1': + resolution: {integrity: sha512-uX5z52GLtQTgOe8r3jeGmFRYrFe52mdpLYJzqjvL1cdy5Kg3MLOZEvaZ/OCH0fSq0t7e50uJQ6oBMZG0ffszBg==} + '@astrojs/telemetry@3.3.0': resolution: {integrity: sha512-UFBgfeldP06qu6khs/yY+q1cDAaArM2/7AEIqQ9Cuvf7B1hNLq0xDrZkct+QoIGyjq56y8IaE2I3CTvG99mlhQ==} engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0} @@ -50,6 +71,11 @@ packages: astro: ^5.0.0 vue: ^3.2.30 + '@astrolib/seo@1.0.0-beta.8': + resolution: {integrity: sha512-SpNycspjcjnz6um4Vph0k+SAKgUib7/8qJRCaaahJD1UfLuXKK7E+bmKbnv8QPBTRPZkQW6zFVaZRl5VvnyDfg==} + peerDependencies: + astro: ^1.2.1 || ^2.0.0 || ^3.0.0-beta.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-beta.0 || ^5.0.0 + '@babel/code-frame@7.27.1': resolution: {integrity: sha512-cjQ7ZlQ0Mv3b47hABuTevyTuYN4i+loJKGeV9flcCgIK37cCXRh+L1bd3iBHlynerhQ7BhCkn2BPbQUL+rGqFg==} engines: {node: '>=6.9.0'} @@ -202,6 +228,34 @@ packages: '@capsizecss/unpack@2.4.0': resolution: {integrity: sha512-GrSU71meACqcmIUxPYOJvGKF0yryjN/L1aCuE9DViCTJI7bfkjgYDPD1zbNDcINJwSSP6UaBZY9GAbYDO7re0Q==} + '@csstools/color-helpers@5.1.0': + resolution: {integrity: sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==} + engines: {node: '>=18'} + + '@csstools/css-calc@2.1.4': + resolution: {integrity: sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==} + engines: {node: '>=18'} + peerDependencies: + '@csstools/css-parser-algorithms': ^3.0.5 + '@csstools/css-tokenizer': ^3.0.4 + + '@csstools/css-color-parser@3.1.0': + resolution: {integrity: sha512-nbtKwh3a6xNVIp/VRuXV64yTKnb1IjTAEEh3irzS+HkKjAOYLTGNb9pmVNntZ8iVBHcWDA2Dof0QtPgFI1BaTA==} + engines: {node: '>=18'} + peerDependencies: + '@csstools/css-parser-algorithms': ^3.0.5 + '@csstools/css-tokenizer': ^3.0.4 + + '@csstools/css-parser-algorithms@3.0.5': + resolution: {integrity: sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==} + engines: {node: '>=18'} + peerDependencies: + '@csstools/css-tokenizer': ^3.0.4 + + '@csstools/css-tokenizer@3.0.4': + resolution: {integrity: sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==} + engines: {node: '>=18'} + '@emnapi/runtime@1.4.5': resolution: {integrity: sha512-++LApOtY0pEEz1zrd9vy1/zXVaVJJ/EbAF3u0fXIzPJEDtnITsBGbbK0EkM72amhl/R5b+5xx0Y/QhcVOpuulg==} @@ -669,9 +723,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@24.2.0': resolution: {integrity: sha512-3xyG3pMCq3oYCNg7/ZP+E1ooTaGB4cG8JWRsqqOYQdbWNY4zbaV0Ennrd7stjiJEFZCaybcIgpTjJWHRfBSIDw==} + '@types/sax@1.2.7': + resolution: {integrity: sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==} + '@types/unist@3.0.3': resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==} @@ -753,6 +813,14 @@ packages: engines: {node: '>=0.4.0'} hasBin: true + acron@1.0.5: + resolution: {integrity: sha512-Jm3uey9PSUl5k9RsjBSfDJG35nG0vd9B4FUCV1J/NeVHDQ5HJPVpAhmGrPYtPKh0gLhEUIEy4DKqBy/p60B+4Q==} + hasBin: true + + agent-base@7.1.4: + resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} + engines: {node: '>= 14'} + ansi-align@3.0.1: resolution: {integrity: sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==} @@ -772,6 +840,9 @@ packages: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} + arg@5.0.2: + resolution: {integrity: sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==} + argparse@2.0.1: resolution: {integrity: sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==} @@ -782,11 +853,34 @@ packages: array-iterate@2.0.1: resolution: {integrity: sha512-I1jXZMjAgCMmxT4qxXfPXa6SthSoE8h6gkSI9BGGNv8mP8G/v0blc+qFnZu6K42vTOiuME596QaLO0TP3Lk0xg==} + astring@1.9.0: + resolution: {integrity: sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==} + hasBin: true + + astro-ai-robots-txt@0.1.2: + resolution: {integrity: sha512-3BRy9WgBw6r71w26pfw8fLHp2P4D7HjcbdRQZLWSVq3olx5fPjEGAKzmEqVxQW2QqEUbURIhc+/DM08AVyhu4g==} + engines: {node: ^18.17.1 || ^20.3.0 || >=21.0.0} + peerDependencies: + astro: ^5.4.3 + + astro-remove-comments@0.0.1: + resolution: {integrity: sha512-2Ph/f6AA0IlRPtsUeas8dwoFrAHBvLH6ICim51ygua5Yt440X1WiDXbQPbHo0eXjkCIMif5eusmf23RuZcfgEg==} + peerDependencies: + astro: ^5.0.0 + + astro-robots-txt@1.0.0: + resolution: {integrity: sha512-6JQSLid4gMhoWjOm85UHLkgrw0+hHIjnJVIUqxjU2D6feKlVyYukMNYjH44ZDZBK1P8hNxd33PgWlHzCASvedA==} + astro@5.13.7: resolution: {integrity: sha512-Of2tST7ErbE4y1dVb4aWDXaQSIRBAfraJ4jDqaA3PzPRJOn6Ina36+tQ+8BezjYqiWwRRJdOEE07PRAJXnsddw==} engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'} hasBin: true + atob@2.1.2: + resolution: {integrity: sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==} + engines: {node: '>= 4.5.0'} + hasBin: true + axobject-query@4.1.0: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} engines: {node: '>= 0.4'} @@ -913,14 +1007,25 @@ packages: resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} + css@3.0.0: + resolution: {integrity: sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==} + cssesc@3.0.0: resolution: {integrity: sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==} engines: {node: '>=4'} hasBin: true + cssstyle@4.6.0: + resolution: {integrity: sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==} + engines: {node: '>=18'} + csstype@3.1.3: resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==} + data-urls@5.0.0: + resolution: {integrity: sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==} + engines: {node: '>=18'} + debug@4.4.1: resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} engines: {node: '>=6.0'} @@ -930,9 +1035,16 @@ packages: supports-color: optional: true + decimal.js@10.6.0: + resolution: {integrity: sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==} + decode-named-character-reference@1.2.0: resolution: {integrity: sha512-c6fcElNV6ShtZXmsgNgFFV5tVX2PaV4g+MOAkb8eXHvn6sryJBrZa9r0zV6+dtTyoCKxtDy5tyQ5ZwQuidtd+Q==} + decode-uri-component@0.2.2: + resolution: {integrity: sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==} + engines: {node: '>=0.10'} + default-browser-id@5.0.0: resolution: {integrity: sha512-A6p/pu/6fyBcA1TRz/GqWYPViplrftcW2gZC9q79ngNCKAeR/X3gcEdXQHl4KNXV+3wgIJ1CPkJQ3IHM6lcsyA==} engines: {node: '>=18'} @@ -1050,6 +1162,10 @@ packages: resolution: {integrity: sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==} engines: {node: '>=18'} + filename-reserved-regex@3.0.0: + resolution: {integrity: sha512-hn4cQfU6GOT/7cFHXBqeBg2TbrMBgdD0kcjLhvSQYYwm3s4B6cjvBfb7nBALJLAXqmU5xajSa7X2NnUud/VCdw==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + flattie@1.1.1: resolution: {integrity: sha512-9UbaD6XdAL97+k/n+N7JwX46K/M6Zc6KcFYskrYL8wbBV/Uyk0CTAMY0VT+qiK5PM7AIc9aTWYtq65U7T+aCNQ==} engines: {node: '>=8'} @@ -1126,6 +1242,10 @@ packages: hookable@5.5.3: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} + html-encoding-sniffer@4.0.0: + resolution: {integrity: sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==} + engines: {node: '>=18'} + html-escaper@3.0.3: resolution: {integrity: sha512-RuMffC89BOWQoY0WKGpIhn5gX3iI54O6nRA0yC124NYVtzjmFWBIiFd8M0x+ZdX0P9R4lADg1mgP8C7PxGOWuQ==} @@ -1135,13 +1255,28 @@ packages: http-cache-semantics@4.2.0: resolution: {integrity: sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ==} + http-proxy-agent@7.0.2: + resolution: {integrity: sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==} + engines: {node: '>= 14'} + + https-proxy-agent@7.0.6: + resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} + engines: {node: '>= 14'} + human-signals@8.0.1: resolution: {integrity: sha512-eKCa6bwnJhvxj14kZk5NCPc6Hb6BdsU9DZcOnmQKSnO1VKrfV0zCvtttPZUsBvjmNDn8rpcJfpwSYnHBjc95MQ==} engines: {node: '>=18.18.0'} + iconv-lite@0.6.3: + resolution: {integrity: sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==} + engines: {node: '>=0.10.0'} + import-meta-resolve@4.2.0: resolution: {integrity: sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==} + inherits@2.0.4: + resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} + iron-webcrypto@1.2.1: resolution: {integrity: sha512-feOM6FaSr6rEABp/eDfVseKyTMDt+KGpeB35SkVn9Tyn0CqvVsY3EwI0v5i8nMHyJnzCIQf7nsy3p41TPkJZhg==} @@ -1166,6 +1301,9 @@ packages: resolution: {integrity: sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==} engines: {node: '>=12'} + is-potential-custom-element-name@1.0.1: + resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} + is-stream@4.0.1: resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==} engines: {node: '>=18'} @@ -1192,6 +1330,15 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true + jsdom@26.1.0: + resolution: {integrity: sha512-Cvc9WUhxSMEo4McES3P7oK3QaXldCfNWp7pl2NNeiIFlCoLr3kfq9kb1fxftiwk1FLV7CvpvDfonxtzUDeSOPg==} + engines: {node: '>=18'} + peerDependencies: + canvas: ^3.0.0 + peerDependenciesMeta: + canvas: + optional: true + jsesc@3.1.0: resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} engines: {node: '>=6'} @@ -1216,6 +1363,9 @@ packages: kolorist@1.8.0: resolution: {integrity: sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==} + lodash@4.17.21: + resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + longest-streak@3.1.0: resolution: {integrity: sha512-9Ri+o0JYgehTaVBBDoMqIl8GXtbWg711O3srftcHhZ0dqnETqLaoIK0x17fUw9rFSlK/0NlsKe0Ahhyl5pXE2g==} @@ -1413,6 +1563,9 @@ packages: resolution: {integrity: sha512-9qny7Z9DsQU8Ou39ERsPU4OZQlSTP47ShQzuKZ6PRXpYLtIFgl/DEBYEXKlvcEa+9tHVcK8CF81Y2V72qaZhWA==} engines: {node: '>=18'} + nwsapi@2.2.22: + resolution: {integrity: sha512-ujSMe1OWVn55euT1ihwCI1ZcAaAU3nxUiDwfDQldc51ZXaB9m2AyOn6/jh1BLe2t/G8xd6uKG1UBF2aZJeg2SQ==} + ofetch@1.4.1: resolution: {integrity: sha512-QZj2DfGplQAr2oj9KzceK9Hwz6Whxazmn85yYeVuS3u9XTMOGMRx0kO95MQ+vLsj/S/NwBDMMLU5hpxvI6Tklw==} @@ -1504,6 +1657,10 @@ packages: property-information@7.1.0: resolution: {integrity: sha512-TwEZ+X+yCJmYfL7TPUOcvBZ4QfoT5YenQiJuX//0th53DE6w0xxLEtfK3iyryQFddXuvkIk51EEgrJQ0WJkOmQ==} + punycode@2.3.1: + resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} + engines: {node: '>=6'} + radix3@1.1.2: resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==} @@ -1571,10 +1728,23 @@ packages: engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true + rrweb-cssom@0.8.0: + resolution: {integrity: sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==} + run-applescript@7.1.0: resolution: {integrity: sha512-DPe5pVFaAsinSaV6QjQ6gdiedWDcRCbUuiQfQa2wmWV7+xC9bGulGI8+TdRmoFkAPaBXk8CrAbnlY2ISniJ47Q==} engines: {node: '>=18'} + safer-buffer@2.1.2: + resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==} + + sax@1.4.1: + resolution: {integrity: sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==} + + saxes@6.0.0: + resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} + engines: {node: '>=v12.22.7'} + semver@6.3.1: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true @@ -1613,6 +1783,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 + smol-toml@1.4.2: resolution: {integrity: sha512-rInDH6lCNiEyn3+hH8KVGFdbjc099j47+OSgbMrfDYX1CmXLfdKd7qi6IfcWj2wFxvSVkuI46M+wPGYfEOEj6g==} engines: {node: '>= 18'} @@ -1621,6 +1796,14 @@ packages: resolution: {integrity: sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==} engines: {node: '>=0.10.0'} + source-map-resolve@0.6.0: + resolution: {integrity: sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==} + deprecated: See https://github.com/lydell/source-map-resolve#deprecated + + source-map@0.6.1: + resolution: {integrity: sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==} + engines: {node: '>=0.10.0'} + space-separated-tokens@2.0.2: resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} @@ -1628,6 +1811,9 @@ packages: resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==} engines: {node: '>=0.10.0'} + 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'} @@ -1655,6 +1841,9 @@ packages: resolution: {integrity: sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==} engines: {node: '>=16'} + symbol-tree@3.2.4: + resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==} + tiny-inflate@1.0.3: resolution: {integrity: sha512-pkY1fj1cKHb2seWDy0B16HeWyczlJA9/WW3u3c4z/NiWDsO3DOU5D7nhTLE9CF0yXv/QZFY7sEJmj24dK+Rrqw==} @@ -1665,13 +1854,28 @@ packages: resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==} engines: {node: '>=12.0.0'} + tldts-core@6.1.86: + resolution: {integrity: sha512-Je6p7pkk+KMzMv2XXKmAE3McmolOQFdxkKw0R8EYNr7sELW46JqnNeTX8ybPiQgvg1ymCoF8LXs5fzFaZvJPTA==} + + tldts@6.1.86: + resolution: {integrity: sha512-WMi/OQ2axVTf/ykqCQgXiIct+mSQDFdH2fkwhPwgEwvJ1kSzZRiinb0zF2Xb8u4+OqPChmyI6MEu4EezNJz+FQ==} + hasBin: true + totalist@3.0.1: resolution: {integrity: sha512-sf4i37nQ2LBx4m3wB74y+ubopq6W/dIzXg0FDGjsYnZHVa1Da8FH853wlL2gtUhg+xJXjfk3kUZS3BRoQeoQBQ==} engines: {node: '>=6'} + tough-cookie@5.1.2: + resolution: {integrity: sha512-FVDYdxtnj0G6Qm/DhNPSb8Ju59ULcup3tuJxkFb5K8Bv2pUXILbf0xZWU8PX8Ov19OXljbUyveOFwRMwkXzO+A==} + engines: {node: '>=16'} + tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} + tr46@5.1.1: + resolution: {integrity: sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==} + engines: {node: '>=18'} + trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} @@ -1827,6 +2031,10 @@ packages: peerDependencies: browserslist: '>= 4.21.0' + valid-filename@4.0.0: + resolution: {integrity: sha512-VEYTpTVPMgO799f2wI7zWf0x2C54bPX6NAfbZ2Z8kZn76p+3rEYCTYVYzMUcVSMvakxMQTriBf24s3+WeXJtEg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + vfile-location@5.0.3: resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==} @@ -1918,12 +2126,32 @@ packages: typescript: optional: true + w3c-xmlserializer@5.0.0: + resolution: {integrity: sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==} + engines: {node: '>=18'} + web-namespaces@2.0.1: resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==} webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} + webidl-conversions@7.0.0: + resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} + engines: {node: '>=12'} + + whatwg-encoding@3.1.1: + resolution: {integrity: sha512-6qN4hJdMwfYBtE3YBTTHhoeuUrDBPZmbQaxWAqSALV/MeEnR5z1xd8UKud2RAkFoPkmB+hli1TZSnyi84xz1vQ==} + engines: {node: '>=18'} + + whatwg-mimetype@4.0.0: + resolution: {integrity: sha512-QaKxh0eNIi2mE9p2vEdzfagOKHCcj1pJ56EEHGQOVxp8r9/iszLUUV7v89x9O1p/T+NlTM5W7jW6+cz4Fq1YVg==} + engines: {node: '>=18'} + + whatwg-url@14.2.0: + resolution: {integrity: sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==} + engines: {node: '>=18'} + whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} @@ -1944,10 +2172,29 @@ packages: resolution: {integrity: sha512-G8ura3S+3Z2G+mkgNRq8dqaFZAuxfsxpBB8OCTGRTCtp+l/v9nbFNmCUP1BZMts3G1142MsZfn6eeUKrr4PD1Q==} engines: {node: '>=18'} + ws@8.18.3: + resolution: {integrity: sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==} + engines: {node: '>=10.0.0'} + peerDependencies: + bufferutil: ^4.0.1 + utf-8-validate: '>=5.0.2' + peerDependenciesMeta: + bufferutil: + optional: true + utf-8-validate: + optional: true + wsl-utils@0.1.0: resolution: {integrity: sha512-h3Fbisa2nKGPxCpm89Hk33lBLsnaGBvctQopaBSOW/uIs6FTe1ATyAnKFJrzVs9vpGdsTe73WF3V4lIsk4Gacw==} engines: {node: '>=18'} + xml-name-validator@5.0.0: + resolution: {integrity: sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==} + engines: {node: '>=18'} + + xmlchars@2.2.0: + resolution: {integrity: sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==} + xxhash-wasm@1.1.0: resolution: {integrity: sha512-147y/6YNh+tlp6nd/2pWq38i9h6mz/EuQ6njIrmW8D1BS5nCqs0P6DG+m6zTGnNz5I+uhZ0SHxBs9BsPrwcKDA==} @@ -1991,6 +2238,14 @@ snapshots: '@antfu/utils@0.7.10': {} + '@asamuzakjp/css-color@3.2.0': + dependencies: + '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) + '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) + '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) + '@csstools/css-tokenizer': 3.0.4 + lru-cache: 10.4.3 + '@astrojs/compiler@2.12.2': {} '@astrojs/internal-helpers@0.7.2': {} @@ -2025,6 +2280,12 @@ snapshots: dependencies: prismjs: 1.30.0 + '@astrojs/sitemap@3.5.1': + dependencies: + sitemap: 8.0.0 + stream-replace-string: 2.0.0 + zod: 3.25.76 + '@astrojs/telemetry@3.3.0': dependencies: ci-info: 4.3.0 @@ -2062,6 +2323,10 @@ snapshots: - tsx - yaml + '@astrolib/seo@1.0.0-beta.8(astro@5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2))': + dependencies: + astro: 5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2) + '@babel/code-frame@7.27.1': dependencies: '@babel/helper-validator-identifier': 7.27.1 @@ -2270,6 +2535,26 @@ snapshots: transitivePeerDependencies: - encoding + '@csstools/color-helpers@5.1.0': {} + + '@csstools/css-calc@2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)': + dependencies: + '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) + '@csstools/css-tokenizer': 3.0.4 + + '@csstools/css-color-parser@3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)': + dependencies: + '@csstools/color-helpers': 5.1.0 + '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) + '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) + '@csstools/css-tokenizer': 3.0.4 + + '@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4)': + dependencies: + '@csstools/css-tokenizer': 3.0.4 + + '@csstools/css-tokenizer@3.0.4': {} + '@emnapi/runtime@1.4.5': dependencies: tslib: 2.8.1 @@ -2597,10 +2882,16 @@ snapshots: dependencies: '@types/unist': 3.0.3 + '@types/node@17.0.45': {} + '@types/node@24.2.0': dependencies: undici-types: 7.10.0 + '@types/sax@1.2.7': + dependencies: + '@types/node': 24.2.0 + '@types/unist@3.0.3': {} '@ungap/structured-clone@1.3.0': {} @@ -2732,6 +3023,12 @@ snapshots: acorn@8.15.0: {} + acron@1.0.5: + dependencies: + lodash: 4.17.21 + + agent-base@7.1.4: {} + ansi-align@3.0.1: dependencies: string-width: 4.2.3 @@ -2747,12 +3044,38 @@ snapshots: normalize-path: 3.0.0 picomatch: 2.3.1 + arg@5.0.2: {} + argparse@2.0.1: {} aria-query@5.3.2: {} array-iterate@2.0.1: {} + astring@1.9.0: {} + + astro-ai-robots-txt@0.1.2(astro@5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2)): + dependencies: + astro: 5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2) + + astro-remove-comments@0.0.1(astro@5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2)): + dependencies: + acron: 1.0.5 + astring: 1.9.0 + astro: 5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2) + css: 3.0.0 + jsdom: 26.1.0 + transitivePeerDependencies: + - bufferutil + - canvas + - supports-color + - utf-8-validate + + astro-robots-txt@1.0.0: + dependencies: + valid-filename: 4.0.0 + zod: 3.25.76 + astro@5.13.7(@types/node@24.2.0)(rollup@4.46.2)(typescript@5.9.2): dependencies: '@astrojs/compiler': 2.12.2 @@ -2855,6 +3178,8 @@ snapshots: - uploadthing - yaml + atob@2.1.2: {} + axobject-query@4.1.0: {} bail@2.0.2: {} @@ -2974,18 +3299,38 @@ snapshots: mdn-data: 2.12.2 source-map-js: 1.2.1 + css@3.0.0: + dependencies: + inherits: 2.0.4 + source-map: 0.6.1 + source-map-resolve: 0.6.0 + cssesc@3.0.0: {} + cssstyle@4.6.0: + dependencies: + '@asamuzakjp/css-color': 3.2.0 + rrweb-cssom: 0.8.0 + csstype@3.1.3: {} + data-urls@5.0.0: + dependencies: + whatwg-mimetype: 4.0.0 + whatwg-url: 14.2.0 + debug@4.4.1: dependencies: ms: 2.1.3 + decimal.js@10.6.0: {} + decode-named-character-reference@1.2.0: dependencies: character-entities: 2.0.2 + decode-uri-component@0.2.2: {} + default-browser-id@5.0.0: {} default-browser@5.2.1: @@ -3104,6 +3449,8 @@ snapshots: dependencies: is-unicode-supported: 2.1.0 + filename-reserved-regex@3.0.0: {} + flattie@1.1.1: {} fontace@0.3.0: @@ -3248,16 +3595,40 @@ snapshots: hookable@5.5.3: {} + html-encoding-sniffer@4.0.0: + dependencies: + whatwg-encoding: 3.1.1 + html-escaper@3.0.3: {} html-void-elements@3.0.0: {} http-cache-semantics@4.2.0: {} + http-proxy-agent@7.0.2: + dependencies: + agent-base: 7.1.4 + debug: 4.4.1 + transitivePeerDependencies: + - supports-color + + https-proxy-agent@7.0.6: + dependencies: + agent-base: 7.1.4 + debug: 4.4.1 + transitivePeerDependencies: + - supports-color + human-signals@8.0.1: {} + iconv-lite@0.6.3: + dependencies: + safer-buffer: 2.1.2 + import-meta-resolve@4.2.0: {} + inherits@2.0.4: {} + iron-webcrypto@1.2.1: {} is-arrayish@0.3.2: @@ -3273,6 +3644,8 @@ snapshots: is-plain-obj@4.1.0: {} + is-potential-custom-element-name@1.0.1: {} + is-stream@4.0.1: {} is-unicode-supported@2.1.0: {} @@ -3291,6 +3664,33 @@ snapshots: dependencies: argparse: 2.0.1 + jsdom@26.1.0: + dependencies: + cssstyle: 4.6.0 + data-urls: 5.0.0 + decimal.js: 10.6.0 + html-encoding-sniffer: 4.0.0 + http-proxy-agent: 7.0.2 + https-proxy-agent: 7.0.6 + is-potential-custom-element-name: 1.0.1 + nwsapi: 2.2.22 + parse5: 7.3.0 + rrweb-cssom: 0.8.0 + saxes: 6.0.0 + symbol-tree: 3.2.4 + tough-cookie: 5.1.2 + w3c-xmlserializer: 5.0.0 + webidl-conversions: 7.0.0 + whatwg-encoding: 3.1.1 + whatwg-mimetype: 4.0.0 + whatwg-url: 14.2.0 + ws: 8.18.3 + xml-name-validator: 5.0.0 + transitivePeerDependencies: + - bufferutil + - supports-color + - utf-8-validate + jsesc@3.1.0: {} json5@2.2.3: {} @@ -3307,6 +3707,8 @@ snapshots: kolorist@1.8.0: {} + lodash@4.17.21: {} + longest-streak@3.1.0: {} lru-cache@10.4.3: {} @@ -3673,6 +4075,8 @@ snapshots: path-key: 4.0.0 unicorn-magic: 0.3.0 + nwsapi@2.2.22: {} + ofetch@1.4.1: dependencies: destr: 2.0.5 @@ -3761,6 +4165,8 @@ snapshots: property-information@7.1.0: {} + punycode@2.3.1: {} + radix3@1.1.2: {} readdirp@4.1.2: {} @@ -3896,8 +4302,18 @@ snapshots: '@rollup/rollup-win32-x64-msvc': 4.46.2 fsevents: 2.3.3 + rrweb-cssom@0.8.0: {} + run-applescript@7.1.0: {} + safer-buffer@2.1.2: {} + + sax@1.4.1: {} + + saxes@6.0.0: + dependencies: + xmlchars: 2.2.0 + semver@6.3.1: {} semver@7.7.2: {} @@ -3964,14 +4380,30 @@ 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 + smol-toml@1.4.2: {} source-map-js@1.2.1: {} + source-map-resolve@0.6.0: + dependencies: + atob: 2.1.2 + decode-uri-component: 0.2.2 + + source-map@0.6.1: {} + space-separated-tokens@2.0.2: {} speakingurl@14.0.1: {} + stream-replace-string@2.0.0: {} + string-width@4.2.3: dependencies: emoji-regex: 8.0.0 @@ -4003,6 +4435,8 @@ snapshots: dependencies: copy-anything: 3.0.5 + symbol-tree@3.2.4: {} + tiny-inflate@1.0.3: {} tinyexec@0.3.2: {} @@ -4012,10 +4446,24 @@ snapshots: fdir: 6.4.6(picomatch@4.0.3) picomatch: 4.0.3 + tldts-core@6.1.86: {} + + tldts@6.1.86: + dependencies: + tldts-core: 6.1.86 + totalist@3.0.1: {} + tough-cookie@5.1.2: + dependencies: + tldts: 6.1.86 + tr46@0.0.3: {} + tr46@5.1.1: + dependencies: + punycode: 2.3.1 + trim-lines@3.0.1: {} trough@2.2.0: {} @@ -4127,6 +4575,10 @@ snapshots: escalade: 3.2.0 picocolors: 1.1.1 + valid-filename@4.0.0: + dependencies: + filename-reserved-regex: 3.0.0 + vfile-location@5.0.3: dependencies: '@types/unist': 3.0.3 @@ -4219,10 +4671,27 @@ snapshots: optionalDependencies: typescript: 5.9.2 + w3c-xmlserializer@5.0.0: + dependencies: + xml-name-validator: 5.0.0 + web-namespaces@2.0.1: {} webidl-conversions@3.0.1: {} + webidl-conversions@7.0.0: {} + + whatwg-encoding@3.1.1: + dependencies: + iconv-lite: 0.6.3 + + whatwg-mimetype@4.0.0: {} + + whatwg-url@14.2.0: + dependencies: + tr46: 5.1.1 + webidl-conversions: 7.0.0 + whatwg-url@5.0.0: dependencies: tr46: 0.0.3 @@ -4244,10 +4713,16 @@ snapshots: string-width: 7.2.0 strip-ansi: 7.1.0 + ws@8.18.3: {} + wsl-utils@0.1.0: dependencies: is-wsl: 3.1.0 + xml-name-validator@5.0.0: {} + + xmlchars@2.2.0: {} + xxhash-wasm@1.1.0: {} yallist@3.1.1: {} diff --git a/public/assets/img/og-image.jpg b/public/assets/img/og-image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..157a80c4d7a09d18bf9b3ae4fab3f1deb64a9fbc GIT binary patch literal 63272 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 S6NBBzH9toRZ$Q`FiIDhABU&&k3h>RV{^O{ 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 Vfxlbe?-uyG1^zEu;LyR?{{Xgr7XAPL literal 0 HcmV?d00001 diff --git a/public/favicon.svg b/public/favicon.svg index f157bd1..eaed106 100644 --- a/public/favicon.svg +++ b/public/favicon.svg @@ -1,9 +1,24 @@ - - - + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/assets/astro.svg b/src/assets/astro.svg deleted file mode 100644 index 8cf8fb0..0000000 --- a/src/assets/astro.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/src/assets/background.svg b/src/assets/background.svg deleted file mode 100644 index 4b2be0a..0000000 --- a/src/assets/background.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/src/assets/ci/icon-only.svg b/src/assets/ci/icon-only.svg index 6c4a1d6..b35927b 100644 --- a/src/assets/ci/icon-only.svg +++ b/src/assets/ci/icon-only.svg @@ -11,13 +11,13 @@ - + - + - + diff --git a/src/assets/ci/typemark.svg b/src/assets/ci/typemark.svg new file mode 100644 index 0000000..2111e7a --- /dev/null +++ b/src/assets/ci/typemark.svg @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/components/Cursor.astro b/src/components/Cursor.astro index f8cea89..41f73d5 100644 --- a/src/components/Cursor.astro +++ b/src/components/Cursor.astro @@ -29,13 +29,13 @@ function onMouseMove(event: MouseEvent) { gsap.to(bigBall, { duration: 0.4, - y: event.pageY - 15, - x: event.pageX - 15, + y: event.clientY - 15, + x: event.clientX - 15, }); gsap.to(smallBall, { duration: 0.1, - x: event.pageX - 5, - y: event.pageY - 7, + x: event.clientX - 5, + y: event.clientY - 7, }); } diff --git a/src/components/GlobalStyles.astro b/src/components/GlobalStyles.astro index feedbd6..589f999 100644 --- a/src/components/GlobalStyles.astro +++ b/src/components/GlobalStyles.astro @@ -27,10 +27,6 @@ width: 100%; height: 100%; margin: 0; - overflow: clip; - - padding: clamp(2rem, 5vw + 1rem, 3.75rem); - font-family: var(--ff-body); font-size: var(--fs-400); @@ -51,4 +47,31 @@ -webkit-clip-path: inset(50%) !important; clip-path: inset(50%) !important; } - \ No newline at end of file + + .content { + & * + * { + margin-top: 0.25em; + } + + & a { + display: inline-block; + width: max-content; + position: relative; + font-weight: 500; + color: var(--clr-ts-warm-red); + } + } + + h1, h2, h3, h4, h5, h6 { + font-family: var(--ff-heading); + } + + h1 { + max-width: 16ch; + font-size: var(--fs-xl); + font-weight: 700c; + text-transform: uppercase; + line-height: 1.1; + letter-spacing: 0.0333em; + } + diff --git a/src/components/Header.astro b/src/components/Header.astro index bc0dc3f..7e73823 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -7,7 +7,7 @@ const isEnglish = Astro.currentLocale === "en"; ---
- +
Back to home
diff --git a/src/components/Hero.astro b/src/components/Hero.astro index 2c91eaf..a541988 100644 --- a/src/components/Hero.astro +++ b/src/components/Hero.astro @@ -1,36 +1,43 @@ --- -import { Image } from "astro:assets"; +import Typemark from "../assets/ci/typemark.svg"; import Logo from "../assets/ci/icon-only.svg"; --- -
-
-
-

Smart websites for bold ideas.

+
+
+

Smart websites for bold ideas.

-

- From concept to launch — websites, apps, and digital solutions - that work hard, so you can play hard. Whether it's a personal - site, an e-commerce platform, or a custom web app, I bring your - ideas to life. -

+

+ + Launching 07.10 - stay tuned! +

- Get in touch -
- -
Tideshift
+
-
+ + + +