From 9dbaf7c321db0f4fc6b801319a54828c41ab49c0 Mon Sep 17 00:00:00 2001 From: hanna Date: Thu, 18 Dec 2025 19:48:49 -0500 Subject: [PATCH 01/10] refactor: improve svg and img loading --- astro.config.mjs | 3 ++ public/img/calendar.svg | 1 - public/img/emoji.svg | 1 - public/img/envelope.svg | 1 - public/img/file-user.svg | 1 - public/img/games.svg | 1 - public/img/gitlab.svg | 1 - public/img/heart.svg | 1 - public/img/user-lock.svg | 1 - {public/img => src/images}/avatar.png | Bin src/images/calendar.svg | 1 + src/images/emoji.svg | 1 + src/images/envelope.svg | 1 + src/images/file-user.svg | 1 + src/images/games.svg | 1 + src/images/gitlab.svg | 1 + src/images/heart.svg | 1 + src/images/user-lock.svg | 1 + src/pages/blog/index.astro | 6 ++-- src/pages/index.astro | 44 ++++++++++++++------------ 20 files changed, 38 insertions(+), 31 deletions(-) delete mode 100644 public/img/calendar.svg delete mode 100644 public/img/emoji.svg delete mode 100644 public/img/envelope.svg delete mode 100644 public/img/file-user.svg delete mode 100644 public/img/games.svg delete mode 100644 public/img/gitlab.svg delete mode 100644 public/img/heart.svg delete mode 100644 public/img/user-lock.svg rename {public/img => src/images}/avatar.png (100%) create mode 100644 src/images/calendar.svg create mode 100644 src/images/emoji.svg create mode 100644 src/images/envelope.svg create mode 100644 src/images/file-user.svg create mode 100644 src/images/games.svg create mode 100644 src/images/gitlab.svg create mode 100644 src/images/heart.svg create mode 100644 src/images/user-lock.svg diff --git a/astro.config.mjs b/astro.config.mjs index 370650a..be3c776 100644 --- a/astro.config.mjs +++ b/astro.config.mjs @@ -5,4 +5,7 @@ import mdx from '@astrojs/mdx'; export default defineConfig({ integrations: [mdx()], + image: { + service: { entrypoint: 'astro/assets/services/noop' }, + }, }); diff --git a/public/img/calendar.svg b/public/img/calendar.svg deleted file mode 100644 index 0bc0e04..0000000 --- a/public/img/calendar.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/img/emoji.svg b/public/img/emoji.svg deleted file mode 100644 index 7aa22b8..0000000 --- a/public/img/emoji.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/img/envelope.svg b/public/img/envelope.svg deleted file mode 100644 index 61a5570..0000000 --- a/public/img/envelope.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/img/file-user.svg b/public/img/file-user.svg deleted file mode 100644 index bdb1648..0000000 --- a/public/img/file-user.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/img/games.svg b/public/img/games.svg deleted file mode 100644 index a9a4425..0000000 --- a/public/img/games.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/img/gitlab.svg b/public/img/gitlab.svg deleted file mode 100644 index 1a36ff5..0000000 --- a/public/img/gitlab.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/img/heart.svg b/public/img/heart.svg deleted file mode 100644 index a6d708c..0000000 --- a/public/img/heart.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/img/user-lock.svg b/public/img/user-lock.svg deleted file mode 100644 index 2db0c0c..0000000 --- a/public/img/user-lock.svg +++ /dev/null @@ -1 +0,0 @@ - diff --git a/public/img/avatar.png b/src/images/avatar.png similarity index 100% rename from public/img/avatar.png rename to src/images/avatar.png diff --git a/src/images/calendar.svg b/src/images/calendar.svg new file mode 100644 index 0000000..0ade821 --- /dev/null +++ b/src/images/calendar.svg @@ -0,0 +1 @@ + diff --git a/src/images/emoji.svg b/src/images/emoji.svg new file mode 100644 index 0000000..defdbc7 --- /dev/null +++ b/src/images/emoji.svg @@ -0,0 +1 @@ + diff --git a/src/images/envelope.svg b/src/images/envelope.svg new file mode 100644 index 0000000..f4046c9 --- /dev/null +++ b/src/images/envelope.svg @@ -0,0 +1 @@ + diff --git a/src/images/file-user.svg b/src/images/file-user.svg new file mode 100644 index 0000000..fe99ac6 --- /dev/null +++ b/src/images/file-user.svg @@ -0,0 +1 @@ + diff --git a/src/images/games.svg b/src/images/games.svg new file mode 100644 index 0000000..d811c37 --- /dev/null +++ b/src/images/games.svg @@ -0,0 +1 @@ + diff --git a/src/images/gitlab.svg b/src/images/gitlab.svg new file mode 100644 index 0000000..d8144c2 --- /dev/null +++ b/src/images/gitlab.svg @@ -0,0 +1 @@ + diff --git a/src/images/heart.svg b/src/images/heart.svg new file mode 100644 index 0000000..fc6135a --- /dev/null +++ b/src/images/heart.svg @@ -0,0 +1 @@ + diff --git a/src/images/user-lock.svg b/src/images/user-lock.svg new file mode 100644 index 0000000..d5f30ab --- /dev/null +++ b/src/images/user-lock.svg @@ -0,0 +1 @@ + diff --git a/src/pages/blog/index.astro b/src/pages/blog/index.astro index 0381198..4d81a57 100644 --- a/src/pages/blog/index.astro +++ b/src/pages/blog/index.astro @@ -1,5 +1,6 @@ --- import { getCollection } from 'astro:content'; +import CalendarIcon from '../../images/calendar.svg'; import Page from '../../layouts/Page.astro'; const posts = (await getCollection('posts')) @@ -35,7 +36,7 @@ const fmtDate = (date) => new Date(date).toLocaleString('en-US', {

{post.data.title}

- calendar icon + {fmtDate(post.data.date)}

@@ -127,9 +128,10 @@ const fmtDate = (date) => new Date(date).toLocaleString('en-US', { max-height: 23px; color: var(--text-muted); - & > img { + & > .icon { margin-right: var(--space-xs); height: 12px; + width: 12px; } } } diff --git a/src/pages/index.astro b/src/pages/index.astro index 57a5b4e..554d3e3 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -1,40 +1,50 @@ --- +import { Image } from 'astro:assets'; import Page from '../layouts/Page.astro'; +import Avatar from '../images/avatar.png'; +import EmojiIcon from '../images/emoji.svg'; +import EnvelopeIcon from '../images/envelope.svg'; +import FileUserIcon from '../images/file-user.svg'; +import GamesIcon from '../images/games.svg'; +import GitLabIcon from '../images/gitlab.svg'; +import HeartIcon from '../images/heart.svg'; +import UserLockIcon from '../images/user-lock.svg'; + const links = [ { name: 'GitLab', - icon: 'gitlab', + icon: GitLabIcon, url: 'https://gitlab.com/hqnna', }, { name: 'Emojis', - icon: 'emoji', + icon: EmojiIcon, url: 'https://discord.gg/qZQmTM5Skk', }, { name: 'Steam', - icon: 'games', + icon: GamesIcon, url: 'https://steamcommunity.com/id/sapphicdoll', }, { name: 'GPG Key', - icon: 'user-lock', + icon: UserLockIcon, url: '/files/key.txt', }, { name: 'Resume', - icon: 'file-user', + icon: FileUserIcon, url: '/files/resume.pdf', }, { name: 'Contact', - icon: 'envelope', + icon: EnvelopeIcon, url: 'mailto:me@hanna.lol', }, { name: 'Donate', - icon: 'heart', + icon: HeartIcon, url: 'https://liberapay.com/hqnna', } ]; @@ -46,15 +56,15 @@ const links = [
- avatar + avatar

Hanna Rose

Just your average software engineer