From 9fa3d2efb152fa63ea6d7ca7dfbff51f91216797 Mon Sep 17 00:00:00 2001 From: default Date: Sat, 17 Jan 2026 22:44:29 +0000 Subject: [PATCH] UI and Package Update --- package.json | 12 ++++++------ public/favicon.png | Bin 0 -> 22021 bytes src/data/blog/homelab.md | 19 +++++++++++++++++++ src/data/blog/personal-websites.md | 2 +- src/layouts/Layout.astro | 2 +- 5 files changed, 27 insertions(+), 8 deletions(-) create mode 100644 public/favicon.png create mode 100644 src/data/blog/homelab.md diff --git a/package.json b/package.json index c279e80..1f83960 100644 --- a/package.json +++ b/package.json @@ -13,11 +13,11 @@ "lint": "eslint ." }, "dependencies": { - "@astrojs/rss": "^4.0.14", - "@astrojs/sitemap": "^3.6.1", + "@astrojs/rss": "^4.0.15", + "@astrojs/sitemap": "^3.7.0", "@resvg/resvg-js": "^2.6.2", "@tailwindcss/vite": "^4.1.18", - "astro": "^5.16.8", + "astro": "^5.16.11", "dayjs": "^1.11.19", "lodash.kebabcase": "^4.1.1", "remark-collapse": "^0.1.2", @@ -32,15 +32,15 @@ "@shikijs/transformers": "^3.21.0", "@tailwindcss/typography": "^0.5.19", "@types/lodash.kebabcase": "^4.1.9", - "@typescript-eslint/parser": "^8.52.0", + "@typescript-eslint/parser": "^8.53.0", "eslint": "^9.39.2", "eslint-plugin-astro": "^1.5.0", "globals": "^16.5.0", "pagefind": "^1.4.0", - "prettier": "^3.7.4", + "prettier": "^3.8.0", "prettier-plugin-astro": "^0.14.1", "prettier-plugin-tailwindcss": "^0.6.14", "typescript": "^5.9.3", - "typescript-eslint": "^8.52.0" + "typescript-eslint": "^8.53.0" } } diff --git a/public/favicon.png b/public/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..a653b2ff167b2ebb66d3b28960186a05dce279c4 GIT binary patch literal 22021 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 F{{~dj9cTam literal 0 HcmV?d00001 diff --git a/src/data/blog/homelab.md b/src/data/blog/homelab.md new file mode 100644 index 0000000..814c0f3 --- /dev/null +++ b/src/data/blog/homelab.md @@ -0,0 +1,19 @@ +--- +title: Homelab +author: Gagan M +pubDatetime: 2025-11-29T14:45:00Z +slug: homelab +featured: false +draft: false +tags: + - Web Developement + - SvelteKit + - TailwindCSS + - Arch Linux +description: + My Journey through creating my homelab +--- + +Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor +incididunt ut labore et dolore magna aliqua. Praesent elementum facilisis leo vel +fringilla est \ No newline at end of file diff --git a/src/data/blog/personal-websites.md b/src/data/blog/personal-websites.md index 526eeb1..ef3b4d2 100644 --- a/src/data/blog/personal-websites.md +++ b/src/data/blog/personal-websites.md @@ -11,7 +11,7 @@ tags: - TailwindCSS - Arch Linux description: - My Journey through creating my personal website. + My Journey through creating my personal website --- Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor diff --git a/src/layouts/Layout.astro b/src/layouts/Layout.astro index 2a3f1de..b6d45c5 100644 --- a/src/layouts/Layout.astro +++ b/src/layouts/Layout.astro @@ -56,7 +56,7 @@ const structuredData = { - +