Compare commits

...

10 Commits

13 changed files with 1013 additions and 1257 deletions

View File

@@ -1,5 +1,12 @@
# yamllint disable-line rule:line-length
# yaml-language-server: $schema=https://raw.githubusercontent.com/streetsidesoftware/cspell/main/cspell.schema.json
---
version: "0.2"
language: "en"
ignorePaths:
- /pnpm-lock.yaml
words:
- dockervolumes
- grayscale
- keyoxide
- markuplint

1
.ignore Normal file
View File

@@ -0,0 +1 @@
pnpm-lock.yaml

3
.prettierignore Normal file
View File

@@ -0,0 +1,3 @@
/.astro/
/dist/
/pnpm-lock.yaml

View File

@@ -1,7 +1,12 @@
# vim: filetype=gitignore
/dist/
*.ico
*.json
*.md
*.mjs
*.png
*.svg
*.webp
*.yaml

View File

@@ -31,9 +31,9 @@ Any static assets, like images, can be placed in the `public/` directory.
All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `pnpm install` | Installs dependencies |
| Command | Action |
| :--------------------- | :----------------------------------------------- |
| `pnpm install` | Installs dependencies |
| `pnpm dev` | Starts local dev server at `localhost:4321` |
| `pnpm build` | Build your production site to `./dist/` |
| `pnpm preview` | Preview your build locally, before deploying |

View File

@@ -5,17 +5,23 @@ import { defineConfig } from "eslint/config";
import jsxA11y from "eslint-plugin-jsx-a11y";
export default defineConfig([
{
ignores: ["./dist/"],
},
{
files: ["**/*.{js,mjs}"],
plugins: { js },
extends: ["js/recommended"],
},
{
files: ["**/*.{astro,html}"],
plugins: {
"jsx-a11y": jsxA11y,
},
},
...eslintPluginAstro.configs.recommended,
eslintPluginPrettierRecommended,
]);

View File

@@ -7,23 +7,26 @@
"build": "astro build",
"preview": "astro preview",
"astro": "astro",
"format": "prettier --write .",
"format:check": "prettier --check .",
"lint:eslint": "eslint",
"lint:markuplint": "markuplint '**/*.{astro,html}'",
"lint:stylelint": "stylelint ."
"lint:markuplint": "markuplint './{public,src}/**/*.{astro,html}'",
"lint:stylelint": "stylelint .",
"deploy": "astro build && scp -r dist/* vds:~/dockervolumes/f1r3xyz_website/web/"
},
"dependencies": {
"@tailwindcss/vite": "^4.2.1",
"astro": "^5.17.1",
"tailwindcss": "^4.2.1"
"@tailwindcss/vite": "^4.2.2",
"astro": "^6.0.8",
"tailwindcss": "^4.2.2"
},
"devDependencies": {
"@astrojs/ts-plugin": "^1.10.6",
"@astrojs/ts-plugin": "^1.10.7",
"@eslint/js": "^10.0.1",
"@markuplint/astro-parser": "^4.6.23",
"@markuplint/ml-config": "^4.8.15",
"@typescript-eslint/parser": "^8.56.1",
"@typescript-eslint/parser": "^8.57.2",
"cspell": "^9.7.0",
"eslint": "^10.0.2",
"eslint": "^10.1.0",
"eslint-config-prettier": "^10.1.8",
"eslint-plugin-astro": "^1.6.0",
"eslint-plugin-jsx-a11y": "^6.10.2",
@@ -34,7 +37,7 @@
"prettier-plugin-astro": "^0.14.1",
"prettier-plugin-tailwindcss": "^0.7.2",
"sharp": "^0.34.5",
"stylelint": "^17.4.0",
"stylelint": "^17.5.0",
"stylelint-config-html": "^1.1.0",
"stylelint-config-recommended": "^18.0.0",
"stylelint-config-standard": "^40.0.0",

2104
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

3
pnpm-workspace.yaml Normal file
View File

@@ -0,0 +1,3 @@
---
overrides:
minimatch@10.1.2: 10.2.3

1
src/images/GitHub.svg Normal file
View File

@@ -0,0 +1 @@
<svg role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg>

After

Width:  |  Height:  |  Size: 822 B

7
src/images/keyoxide.svg Normal file
View File

@@ -0,0 +1,7 @@
<svg version="1.1" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
<path d="m14.662 2.7734c-0.86914 8.5e-6 -1.5742 0.70509-1.5742 1.5742 0 0.52528 0.26095 1.006 0.67773 1.2949 0.12007 0.083138 0.18912 0.092562 0.20508 0.22266 0.01604 0.13001-0.16211 0.25-0.16211 0.25l-3.3242 2.5859v-0.5293c0.14724-1.4561-0.83223-2.9405-2.2754-3.2793-1.719-0.502-3.7931 1.0298-3.7931 2.6452 0 1.9182 0.00778 8.9247 0.00211 13.429-0.00211 1.6772 1.3577 3.0332 3.0332 3.0332s3.0352-1.3576 3.0352-3.0332v-0.39648c1.365 0.90898 2.7303 1.8174 4.0938 2.7285 1.1299 0.93021 2.9078 0.93859 3.9902-0.07422 1.3712-1.1518 1.323-3.4999-0.0918-4.5957-1.935-1.3219-3.8897-2.6181-5.8418-3.916l5.7734-4.4883c1.1632-0.90466 1.4954-2.5005 0.83398-3.7832-0.04938-0.095755-0.06511-0.12998-0.16797-0.16992-0.10277-0.039938-0.18425 0.00439-0.28711 0.042969-0.14138 0.053062-0.29257 0.080078-0.44531 0.080078-0.69894 0-1.2656-0.56662-1.2656-1.2656 9.4e-5 -0.094853 0.01636-0.14996-0.01172-0.20898-0.02807-0.059023-0.10233-0.097092-0.17578-0.10547-0.12191-0.013926-0.24437-0.020476-0.36719-0.019531-0.12049 8.587e-4 -0.21169-0.00952-0.26367-0.097656-0.05189-0.088142-0.02344-0.18975-0.02344-0.34961 0-0.86915-0.70504-1.5742-1.5742-1.5742z"/>
<path d="m12.806 3.085a1.0735 1.0735 0 0 1-1.0735 1.0735 1.0735 1.0735 0 0 1-1.0735-1.0735 1.0735 1.0735 0 0 1 1.0735-1.0735 1.0735 1.0735 0 0 1 1.0735 1.0735z"/>
<path d="m13.458 1.0033a0.70038 0.70038 0 0 1-0.70038 0.70038 0.70038 0.70038 0 0 1-0.70038-0.70038 0.70038 0.70038 0 0 1 0.70038-0.70038 0.70038 0.70038 0 0 1 0.70038 0.70038z"/>
<path d="m11.339 0.48902a0.48902 0.48902 0 0 1-0.48902 0.48902 0.48902 0.48902 0 0 1-0.48902-0.48902 0.48902 0.48902 0 0 1 0.48902-0.48902 0.48902 0.48902 0 0 1 0.48902 0.48902z"/>
<path d="m19.203 5.1296a0.85797 0.85797 0 0 1-0.85797 0.85797 0.85797 0.85797 0 0 1-0.85797-0.85797 0.85797 0.85797 0 0 1 0.85797-0.85797 0.85797 0.85797 0 0 1 0.85797 0.85797z"/>
</svg>

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -5,6 +5,8 @@ import InlineImage from "../components/inline-image.astro";
import InlineSvg from "../components/inline-svg.astro";
import avatar from "../images/Icon Alec 150.png";
import furAffinityLogo from "../images/fa-logo.webp";
import GitHubLogo from "../images/GitHub.svg";
import KeyoxideLogo from "../images/keyoxide.svg";
import MastodonLogo from "../images/mastodon-logo.svg";
import MatrixLogo from "../images/matrix-logo.svg";
import "../styles/global.css";
@@ -39,38 +41,60 @@ import "../styles/global.css";
<p>A zebra from Germany</p>
<p>(Web-)dev by day furry, gamer and game master by night</p>
</section>
<ul class="flex flex-col gap-2">
<li>
<ExternalLink
cssClass="link-matrix"
href="https://matrix.to/#/@f1r3w4rr10r:bark.lgbt"
title="My matrix account"
>
<InlineSvg SvgComponent={MatrixLogo} slot="logo" />
<span>@f1r3w4rr10r:bark.lgbt</span>
</ExternalLink>
</li>
<li>
<ExternalLink
cssClass="link-mastodon"
href="https://bark.lgbt/@f1r3w4rr10r"
title="My Mastodon account"
>
<InlineSvg SvgComponent={MastodonLogo} slot="logo" />
<span>@f1r3w4rr10r@bark.lgbt</span>
</ExternalLink>
</li>
<li>
<ExternalLink
cssClass="link-fur-affinity"
href="https://www.furaffinity.net/user/f1r3w4rr10r/"
title="My Fur Affinity account"
>
<InlineImage src={furAffinityLogo} slot="logo" />
<span>f1r3w4rr10r</span>
</ExternalLink>
</li>
</ul>
<nav>
<ul class="flex flex-col gap-2">
<li>
<ExternalLink
cssClass="link-matrix"
href="https://matrix.to/#/@f1r3w4rr10r:bark.lgbt"
title="My matrix account"
>
<InlineSvg SvgComponent={MatrixLogo} slot="logo" />
<span>@f1r3w4rr10r:bark.lgbt</span>
</ExternalLink>
</li>
<li>
<ExternalLink
cssClass="link-mastodon"
href="https://bark.lgbt/@f1r3w4rr10r"
title="My Mastodon account"
>
<InlineSvg SvgComponent={MastodonLogo} slot="logo" />
<span>@f1r3w4rr10r@bark.lgbt</span>
</ExternalLink>
</li>
<li>
<ExternalLink
cssClass="link-fur-affinity"
href="https://www.furaffinity.net/user/f1r3w4rr10r/"
title="My Fur Affinity account"
>
<InlineImage src={furAffinityLogo} slot="logo" />
<span>f1r3w4rr10r</span>
</ExternalLink>
</li>
<li>
<ExternalLink
cssClass="link-github"
href="https://github.com/f1r3w4rr10r"
title="My GitHub account"
>
<InlineSvg SvgComponent={GitHubLogo} slot="logo" />
<span>f1r3w4rr10r</span>
</ExternalLink>
</li>
<li>
<ExternalLink
cssClass="link-keyoxide"
href="https://keyoxide.org/B73A94768A3D1C0BA02B2CC9D8DEF70F1E71C8CF"
title="My Keyoxide entry"
>
<InlineSvg SvgComponent={KeyoxideLogo} slot="logo" />
<span>Keyoxide</span>
</ExternalLink>
</li>
</ul>
</nav>
</article>
</main>
</body>

View File

@@ -11,6 +11,16 @@
from var(--color-fur-affinity) calc(l - var(--hover-darken)) c h
);
--color-github: #1f2328;
--color-github-hover: oklch(
from var(--color-github) calc(l - var(--hover-darken)) c h
);
--color-keyoxide: #6855c3;
--color-keyoxide-hover: oklch(
from var(--color-keyoxide) calc(l - var(--hover-darken)) c h
);
--color-mastodon: oklch(from #6364ff var(--link-bg-l) c h);
--color-mastodon-hover: oklch(
from var(--color-mastodon) calc(l - var(--hover-darken)) c h
@@ -37,6 +47,14 @@
@apply bg-fur-affinity hover:bg-fur-affinity-hover text-white;
}
.link-github {
@apply bg-github hover:bg-github-hover text-white;
}
.link-keyoxide {
@apply bg-keyoxide hover:bg-keyoxide-hover text-white;
}
.link-mastodon {
@apply bg-mastodon hover:bg-mastodon-hover text-white;
}