diff --git a/README.md b/README.md
index d6cc510..3778cc9 100644
--- a/README.md
+++ b/README.md
@@ -609,6 +609,8 @@ Configure the compressor in `astro.config.mjs` file:
});
```
+- [Bag of Tricks for Astro's View TranĀsiĀtions](https://github.com/martrapp/astro-vtbot#readme): is a collection of extensions and support aimed at enhancing Astro's view transitions. Whether you're looking to add flair to your website or streamline user experience, this toolkit offers various techniques to elevate your projects. In the template, it was used to add View Transitions to a Starlight docs.
+
### Flexibility with Integrations
The great thing about Astro is its rich ecosystem of integrations, allowing you to tailor project functionalities to your exact needs. Feel free to explore [Astro integrations page](https://astro.build/integrations/) and add additional capabilities as you see fit.
diff --git a/astro.config.mjs b/astro.config.mjs
index 77dbe65..f63f2c2 100644
--- a/astro.config.mjs
+++ b/astro.config.mjs
@@ -79,21 +79,16 @@ export default defineConfig({
favicon: "/favicon.ico",
components: {
SiteTitle: "./src/components/ui/starlight/SiteTitle.astro",
+ Head: "./src/components/ui/starlight/Head.astro",
},
head: [
{
tag: "meta",
- attrs: {
- property: "og:image",
- content: "https://screwfast.uk" + "/social.png",
- },
+ attrs: { property: "og:image", content: "https://screwfast.uk" + "/social.webp" },
},
{
tag: "meta",
- attrs: {
- property: "twitter:image",
- content: "https://screwfast.uk" + "/social.png",
- },
+ attrs: { property: "twitter:image", content: "https://screwfast.uk" + "/social.webp" },
},
],
}),
diff --git a/package-lock.json b/package-lock.json
index 40c5a87..594e836 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -8,12 +8,12 @@
"version": "0.0.1",
"dependencies": {
"@astrojs/check": "^0.5.10",
- "@astrojs/sitemap": "^3.1.1",
- "@astrojs/starlight": "^0.21.2",
+ "@astrojs/sitemap": "^3.1.2",
+ "@astrojs/starlight": "^0.21.3",
"@astrojs/starlight-tailwind": "^2.0.1",
"@astrojs/tailwind": "^5.1.0",
- "@astrojs/vercel": "^7.4.0",
- "astro": "^4.5.9",
+ "@astrojs/vercel": "^7.5.0",
+ "astro": "^4.5.12",
"astro-compressor": "^0.4.1",
"globby": "^14.0.1",
"gsap": "^3.12.5",
@@ -25,9 +25,10 @@
},
"devDependencies": {
"@tailwindcss/forms": "^0.5.7",
+ "astro-vtbot": "^1.7.1",
"prettier": "^3.2.5",
"prettier-plugin-astro": "^0.13.0",
- "prettier-plugin-tailwindcss": "^0.5.12",
+ "prettier-plugin-tailwindcss": "^0.5.13",
"typescript": "^5.4.3"
}
},
@@ -78,9 +79,9 @@
"integrity": "sha512-XpC8MAaWjD1ff6/IfkRq/5k1EFj6zhCNqXRd5J43SVJEBj/Bsmizkm8N0xOYscGcDFQkRgEw6/eKnI5x/1l6aA=="
},
"node_modules/@astrojs/internal-helpers": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/@astrojs/internal-helpers/-/internal-helpers-0.3.0.tgz",
- "integrity": "sha512-tGmHvrhpzuz0JBHaJX8GywN9g4rldVNHtkoVDC3m/DdzBO70jGoVuc0uuNVglRYnsdwkbG0K02Iw3nOOR3/Y4g=="
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/@astrojs/internal-helpers/-/internal-helpers-0.4.0.tgz",
+ "integrity": "sha512-6B13lz5n6BrbTqCTwhXjJXuR1sqiX/H6rTxzlXx+lN1NnV4jgnq/KJldCQaUWJzPL5SiWahQyinxAbxQtwgPHA=="
},
"node_modules/@astrojs/language-server": {
"version": "2.8.4",
@@ -193,18 +194,18 @@
}
},
"node_modules/@astrojs/sitemap": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@astrojs/sitemap/-/sitemap-3.1.1.tgz",
- "integrity": "sha512-qPgdBIcDUaea98mTtLfi5z9oXZpzSjEn/kes70/Ex8FOZZ+DIHVKRYOLOtvy8p+FTXr/9oc7BjmIbTYmYLLJVg==",
+ "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/starlight": {
- "version": "0.21.2",
- "resolved": "https://registry.npmjs.org/@astrojs/starlight/-/starlight-0.21.2.tgz",
- "integrity": "sha512-ziDfrbhBjw/+HwMITk6yz7SbkQKQJZY9GlaPHntSPq4kYs+b2ru3toIxj2l3T9LUFtUpNWHkj+C1wJTmfLZfaw==",
+ "version": "0.21.3",
+ "resolved": "https://registry.npmjs.org/@astrojs/starlight/-/starlight-0.21.3.tgz",
+ "integrity": "sha512-SvIKB8ECR+RhYdTg3bKsTL2e5Yac75eTatfOMGjkp3ced9Bx34xXMSURuKx/AHBWo1X/+WoWzKT3Y3d2y7kkVg==",
"dependencies": {
"@astrojs/mdx": "^2.1.1",
"@astrojs/sitemap": "^3.0.5",
@@ -287,11 +288,11 @@
}
},
"node_modules/@astrojs/vercel": {
- "version": "7.4.0",
- "resolved": "https://registry.npmjs.org/@astrojs/vercel/-/vercel-7.4.0.tgz",
- "integrity": "sha512-KMCDCOV+UwsJnDX4Q/FE18S0+XwOlu3e6UA/Jr/v2vh0v24aDpkbA0L9DmV4c1ETHLY/vxfjey40gk30iSXNKw==",
+ "version": "7.5.0",
+ "resolved": "https://registry.npmjs.org/@astrojs/vercel/-/vercel-7.5.0.tgz",
+ "integrity": "sha512-RYFZNHkfNgFNb41nblG26ubw5924hAjLYs+Bpp4kttcsYJAX/wavIfDbfZQ/XesDTKwIH+Gi/+3c5bldZePFDA==",
"dependencies": {
- "@astrojs/internal-helpers": "0.3.0",
+ "@astrojs/internal-helpers": "0.4.0",
"@vercel/analytics": "^1.0.2",
"@vercel/edge": "^1.1.1",
"@vercel/nft": "^0.26.4",
@@ -2807,13 +2808,13 @@
}
},
"node_modules/astro": {
- "version": "4.5.9",
- "resolved": "https://registry.npmjs.org/astro/-/astro-4.5.9.tgz",
- "integrity": "sha512-GheU72Goz7dYQNKaqTxB2H49cNvHfahGSbNkTvMXk+gyHf/g633qadqlO2ZQbTUacoUWmDzvS5fhMZt2/w4naQ==",
+ "version": "4.5.12",
+ "resolved": "https://registry.npmjs.org/astro/-/astro-4.5.12.tgz",
+ "integrity": "sha512-xIJcFI2hbyV8+h5pWjL7SKD1jIP0K01fYVAH+gdAt0mJaXy+u8Mj+goD0cPlK6sEaykR+7zxQLYGKJ44U4qarg==",
"dependencies": {
"@astrojs/compiler": "^2.7.0",
- "@astrojs/internal-helpers": "0.3.0",
- "@astrojs/markdown-remark": "4.3.1",
+ "@astrojs/internal-helpers": "0.4.0",
+ "@astrojs/markdown-remark": "4.3.2",
"@astrojs/telemetry": "3.0.4",
"@babel/core": "^7.24.3",
"@babel/generator": "^7.23.3",
@@ -3149,10 +3150,20 @@
"url": "https://opencollective.com/unified"
}
},
+ "node_modules/astro-vtbot": {
+ "version": "1.7.1",
+ "resolved": "https://registry.npmjs.org/astro-vtbot/-/astro-vtbot-1.7.1.tgz",
+ "integrity": "sha512-LTOs5d5Y1A7I/19RDeZKfur/oRsAD9Rlf9fp5pvidlp8kHbagWcI96EiDewNyK+j9gdROu9mw46WExOj1BQ4dg==",
+ "dev": true,
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/martrapp"
+ }
+ },
"node_modules/astro/node_modules/@astrojs/markdown-remark": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/@astrojs/markdown-remark/-/markdown-remark-4.3.1.tgz",
- "integrity": "sha512-eJFi600tkRjTFiwzY9oD8AgCgB7gFqyWCKWuZ33dATVBgLiROD+zlMZ8STZzU7+ZALvmiUAun/K7umTmP5YfVQ==",
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/@astrojs/markdown-remark/-/markdown-remark-4.3.2.tgz",
+ "integrity": "sha512-4Oa4VaYiBd0MatB+rWIU/0A8pZH/sK3c2QkRYb+OO2lPl+qzevJtWaZY8hAQc4qurIOlRdn6B6ofDAGhWw+DSg==",
"dependencies": {
"@astrojs/prism": "^3.0.0",
"github-slugger": "^2.0.0",
@@ -7740,9 +7751,9 @@
"devOptional": true
},
"node_modules/prettier-plugin-tailwindcss": {
- "version": "0.5.12",
- "resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.5.12.tgz",
- "integrity": "sha512-o74kiDBVE73oHW+pdkFSluHBL3cYEvru5YgEqNkBMFF7Cjv+w1vI565lTlfoJT4VLWDe0FMtZ7FkE/7a4pMXSQ==",
+ "version": "0.5.13",
+ "resolved": "https://registry.npmjs.org/prettier-plugin-tailwindcss/-/prettier-plugin-tailwindcss-0.5.13.tgz",
+ "integrity": "sha512-2tPWHCFNC+WRjAC4SIWQNSOdcL1NNkydXim8w7TDqlZi+/ulZYz2OouAI6qMtkggnPt7lGamboj6LcTMwcCvoQ==",
"dev": true,
"engines": {
"node": ">=14.21.3"
@@ -7752,6 +7763,7 @@
"@prettier/plugin-pug": "*",
"@shopify/prettier-plugin-liquid": "*",
"@trivago/prettier-plugin-sort-imports": "*",
+ "@zackad/prettier-plugin-twig-melody": "*",
"prettier": "^3.0",
"prettier-plugin-astro": "*",
"prettier-plugin-css-order": "*",
@@ -7777,6 +7789,9 @@
"@trivago/prettier-plugin-sort-imports": {
"optional": true
},
+ "@zackad/prettier-plugin-twig-melody": {
+ "optional": true
+ },
"prettier-plugin-astro": {
"optional": true
},
@@ -7806,9 +7821,6 @@
},
"prettier-plugin-svelte": {
"optional": true
- },
- "prettier-plugin-twig-melody": {
- "optional": true
}
}
},
diff --git a/package.json b/package.json
index 06a0fd6..e26d3d5 100644
--- a/package.json
+++ b/package.json
@@ -11,12 +11,12 @@
},
"dependencies": {
"@astrojs/check": "^0.5.10",
- "@astrojs/sitemap": "^3.1.1",
- "@astrojs/starlight": "^0.21.2",
+ "@astrojs/sitemap": "^3.1.2",
+ "@astrojs/starlight": "^0.21.3",
"@astrojs/starlight-tailwind": "^2.0.1",
"@astrojs/tailwind": "^5.1.0",
- "@astrojs/vercel": "^7.4.0",
- "astro": "^4.5.9",
+ "@astrojs/vercel": "^7.5.0",
+ "astro": "^4.5.12",
"astro-compressor": "^0.4.1",
"globby": "^14.0.1",
"gsap": "^3.12.5",
@@ -28,9 +28,10 @@
},
"devDependencies": {
"@tailwindcss/forms": "^0.5.7",
+ "astro-vtbot": "^1.7.1",
"prettier": "^3.2.5",
"prettier-plugin-astro": "^0.13.0",
- "prettier-plugin-tailwindcss": "^0.5.12",
+ "prettier-plugin-tailwindcss": "^0.5.13",
"typescript": "^5.4.3"
}
}
diff --git a/src/components/ui/starlight/Head.astro b/src/components/ui/starlight/Head.astro
new file mode 100644
index 0000000..5ce9c40
--- /dev/null
+++ b/src/components/ui/starlight/Head.astro
@@ -0,0 +1,26 @@
+---
+import StarlightHead from "@astrojs/starlight/components/Head.astro";
+import {
+ default as VtbotStarlight,
+ type Props,
+} from "astro-vtbot/components/starlight/Base.astro";
+
+// https://docs.astro.build/en/guides/view-transitions/#fallback-control
+Astro.props.viewTransitionsFallback = "animate";
+---
+
+
+
+
+
+