From d0b9fd514434668b419c4ff63589adce56109b8f Mon Sep 17 00:00:00 2001 From: DerGrumpf Date: Sun, 7 Jun 2026 22:51:22 +0200 Subject: [PATCH] Added 404, Linktree, moved blog to /blog from index, improved markdown frontmatter to accept tags --- cyperpunk.de/public/blog.png | Bin 0 -> 1157 bytes cyperpunk.de/src/components/Sidebar.astro | 22 +- cyperpunk.de/src/components/Snake.astro | 243 ++++++++++++++++++ cyperpunk.de/src/components/Topbar.astro | 3 +- cyperpunk.de/src/content.config.ts | 1 + cyperpunk.de/src/content/posts/test.md | 5 +- cyperpunk.de/src/layouts/Blank.astro | 23 ++ cyperpunk.de/src/pages/404.astro | 33 +++ .../src/pages/{posts => blog}/[id].astro | 13 +- cyperpunk.de/src/pages/blog/index.astro | 47 ++++ cyperpunk.de/src/pages/index.astro | 66 +++-- cyperpunk.de/src/styles/global.css | 23 +- 12 files changed, 448 insertions(+), 31 deletions(-) create mode 100644 cyperpunk.de/public/blog.png create mode 100644 cyperpunk.de/src/components/Snake.astro create mode 100644 cyperpunk.de/src/layouts/Blank.astro create mode 100644 cyperpunk.de/src/pages/404.astro rename cyperpunk.de/src/pages/{posts => blog}/[id].astro (87%) create mode 100644 cyperpunk.de/src/pages/blog/index.astro diff --git a/cyperpunk.de/public/blog.png b/cyperpunk.de/public/blog.png new file mode 100644 index 0000000000000000000000000000000000000000..b17e462f6105ce7497f86b5b40d77276a5d7f2a6 GIT binary patch literal 1157 zcmeAS@N?(olHy`uVBq!ia0y~yU`PRB4mJh`hJr^^Ll_tsI14-?iy0WWg+Z8+Vb&Z8 z1_l;$PZ!6KiaBrRp6(ZO6>;xxYgA0GNoKjT)8HSoo48t*$^yel8w?yi2s#Q%i28=` zOvvEjzVl-J^I342+SvEs?qh|Yrl|c)I|B0%tisbT{R`lIc(jr>x%3sBcJ+r-b zT066yI_t+{Sub>nm(#GVMZ(#sM^W+E1c79a4nvhA5<*ElVBy1aCj4$xmYlY(Td{rh z;acYt@!y#Gr99FmYWDFf*5BlwB9Oybc=peR#uPEx!&eiJ3VbsE&HAm!$tee$Y0geP ziGCen)f-h^y1P9*6cr1%-0IdpQ1f>ZC;2+;aS;`CyyRc}2x}(v97+OXjfUEw>gja=5Pl&{DJf0xzdz zLb%hX?ab@l?9wX5-%gys_%27`(B5m?`0jl6ayfN(i?b8kjOW%bv?TpM$2$epvA$E3 z<<$J>*V=RTNTsII)3{3$CJ4P|F8#q>(NpCVRQGxEiDe!hol6@ZzGs`YSy?Hy^6+m} zl>^_GTGep$T$&@!RQW@=V#C3`LP82Ab8H!O7Fgb9O8vuV6Hq+Ag=L4(55?vw;?Y|~ zI6DiRA6&iq?CaN>1wF+FR-O1N6m)QrPtd&Xo;%mr)=izj7PRlQLTYxxmuE}XXveB6 z^6p^!q18NPxl)jv+zvM$Pf1si3B(ZmRcLm*wvbXKJM8 zI&{r`xIQQ9K+XQt`WvG9&pM_|Ji+qC#cTf-i%s_yKbSuwL*eMj8{vU%(Mxj9blAWB zvH8Hy9b8#UubeFS=-4G-IGMHa@`B})t!_EBb)!sPO5kGb zsch!djx#$ZUXA87y2qk-{;xoi+H}VA*Zz3lT`99)fosx^bNPZ*=ih6W-H!Oq{J4($ d63;(2CHeWX6E{djFfcGMc)I$ztaD0e0s!fB`@#SK literal 0 HcmV?d00001 diff --git a/cyperpunk.de/src/components/Sidebar.astro b/cyperpunk.de/src/components/Sidebar.astro index 3cd8b97..e4ec845 100644 --- a/cyperpunk.de/src/components/Sidebar.astro +++ b/cyperpunk.de/src/components/Sidebar.astro @@ -1,4 +1,12 @@ --- +import type { Props as AstroProps } from 'astro'; + +interface Props { + tags?: string[]; +} +const { tags = [] } = Astro.props; +const selectedTag = Astro.url.searchParams.get('tag'); + const links = [ { label: "github", href: "https://github.com/DerGrumpf", icon: "/github.png" }, { label: "gitea", href: "https://git.cyperpunk.de", icon: "/git.png" }, @@ -30,13 +38,15 @@ const links = [
diff --git a/cyperpunk.de/src/components/Snake.astro b/cyperpunk.de/src/components/Snake.astro new file mode 100644 index 0000000..8ff3402 --- /dev/null +++ b/cyperpunk.de/src/components/Snake.astro @@ -0,0 +1,243 @@ +--- +--- + + + diff --git a/cyperpunk.de/src/components/Topbar.astro b/cyperpunk.de/src/components/Topbar.astro index c73768a..7a3d490 100644 --- a/cyperpunk.de/src/components/Topbar.astro +++ b/cyperpunk.de/src/components/Topbar.astro @@ -1,6 +1,7 @@ --- const navItems = [ { label: "Home", href: "/" }, + { label: "Blog", href: "/blog" }, { label: "About", href: "/about" }, ]; @@ -8,7 +9,7 @@ const currentPath = Astro.url.pathname; ---
- +
+ + + diff --git a/cyperpunk.de/src/styles/global.css b/cyperpunk.de/src/styles/global.css index e7633c8..926f1a9 100644 --- a/cyperpunk.de/src/styles/global.css +++ b/cyperpunk.de/src/styles/global.css @@ -201,14 +201,14 @@ --ctp-accent: var(--ctp-mauve); } -[data-theme="latte"] .icon-mono { - filter: none; -} - .icon-mono { filter: invert(1); } +[data-theme="latte"] .icon-mono { + filter: none; +} + body { background-color: var(--ctp-base); color: var(--ctp-text); @@ -284,6 +284,18 @@ article a:hover { color: var(--ctp-peach); } +/* Images */ +article img { + max-width: 100%; + max-height: 500px; + object-fit: contain; + border-radius: 0.5rem; + display: block; + margin: 1rem auto; + padding: 2px; + background: linear-gradient(to right, var(--ctp-red), var(--ctp-peach), var(--ctp-yellow), var(--ctp-green), var(--ctp-teal), var(--ctp-blue), var(--ctp-mauve)); +} + /* Horizontal Line */ article hr { border: none; @@ -304,8 +316,7 @@ article hr { /* Code Block*/ article pre code { background-color: transparent; - padding: 0; -} + padding: 0} article code { background-color: var(--ctp-surface);