diff --git a/frontend/app/components/SocialIcon.vue b/frontend/app/components/SocialIcon.vue new file mode 100644 index 0000000..a876087 --- /dev/null +++ b/frontend/app/components/SocialIcon.vue @@ -0,0 +1,38 @@ + + + + + diff --git a/frontend/app/layouts/default.vue b/frontend/app/layouts/default.vue index 95926f9..1d7d1ee 100644 --- a/frontend/app/layouts/default.vue +++ b/frontend/app/layouts/default.vue @@ -77,7 +77,10 @@ const { data: categories } = await useFetch('/api/categories', {

{{ $t('site.follow') }}

@@ -224,6 +227,22 @@ const { data: categories } = await useFetch('/api/categories', { text-underline-offset: 0.2em; } +.social { + display: inline-flex; + align-items: center; + gap: 0.55rem; +} + +/* Keep the underline on the label, not stretched across the icon. */ +.social:hover { + text-decoration: none; +} + +.social:hover span { + text-decoration: underline; + text-underline-offset: 0.2em; +} + .copyright { padding-top: 1.75rem; text-align: center; diff --git a/frontend/package-lock.json b/frontend/package-lock.json index c308e5f..c23c53a 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -10,6 +10,7 @@ "@nuxtjs/i18n": "^10.6.0", "marked": "^18.0.11", "nuxt": "^4.5.2", + "simple-icons": "^16.28.0", "vue": "^3.5.41", "vue-router": "^5.2.0" }, @@ -10241,6 +10242,25 @@ "url": "https://github.com/steveukx/git-js?sponsor=1" } }, + "node_modules/simple-icons": { + "version": "16.28.0", + "resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-16.28.0.tgz", + "integrity": "sha512-sQPR5AtK/ijRjou7zw7mlLp08oB6FH7i0lOy5XJ2zp9mJs/yejgiOn7KvQoe2q4YJIx6VmgUSW5AOefebPt5kg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/simple-icons" + }, + { + "type": "github", + "url": "https://github.com/sponsors/simple-icons" + } + ], + "license": "CC0-1.0", + "engines": { + "node": ">=0.12.18" + } + }, "node_modules/sirv": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/sirv/-/sirv-3.0.2.tgz", diff --git a/frontend/package.json b/frontend/package.json index 7a029be..69cb7f5 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -14,6 +14,7 @@ "@nuxtjs/i18n": "^10.6.0", "marked": "^18.0.11", "nuxt": "^4.5.2", + "simple-icons": "^16.28.0", "vue": "^3.5.41", "vue-router": "^5.2.0" },