diff options
| author | Danilo M. <danix@danix.xyz> | 2026-04-16 14:52:16 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-04-16 14:52:16 +0200 |
| commit | beb62373ad8330e33840ae14d5eb24441d97b543 (patch) | |
| tree | 47839ce3583e979121b63eefb17f6f33b0081ddf /themes | |
| parent | 71f577b171f6208fff7de47c7dad087955aa5fae (diff) | |
| download | danixxyz-beb62373ad8330e33840ae14d5eb24441d97b543.tar.gz danixxyz-beb62373ad8330e33840ae14d5eb24441d97b543.zip | |
feat: import 36 articles with assets and create supporting shortcodes
- Migrate all English articles from old site to content/en/articles/
- Organize article assets in static/uppies/year/month/ structure
- Create Italian article stubs with draft=true status
- Add 7 new shortcodes: strike, em, dropcap, figure, highlight, img, youtube, gal-img
- Update article image paths to reference /uppies/ locations
- All 36 articles now build successfully without errors
Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
Diffstat (limited to 'themes')
9 files changed, 66 insertions, 4 deletions
diff --git a/themes/danix-xyz-hacker/assets/css/main.min.css b/themes/danix-xyz-hacker/assets/css/main.min.css index 8122e23..9c0aadb 100644 --- a/themes/danix-xyz-hacker/assets/css/main.min.css +++ b/themes/danix-xyz-hacker/assets/css/main.min.css @@ -1316,10 +1316,18 @@ button, pointer-events: none; } +.visible { + visibility: visible; +} + .invisible { visibility: hidden; } +.static { + position: static; +} + .fixed { position: fixed; } @@ -1356,6 +1364,10 @@ button, right: 0.75rem; } +.right-4 { + right: 1rem; +} + .top-0 { top: 0px; } @@ -1364,6 +1376,10 @@ button, top: 0.75rem; } +.top-4 { + top: 1rem; +} + .z-10 { z-index: 10; } @@ -1389,6 +1405,11 @@ button, margin-right: auto; } +.my-4 { + margin-top: 1rem; + margin-bottom: 1rem; +} + .my-6 { margin-top: 1.5rem; margin-bottom: 1.5rem; @@ -1427,6 +1448,10 @@ button, margin-top: 4rem; } +.mt-2 { + margin-top: 0.5rem; +} + .mt-3 { margin-top: 0.75rem; } @@ -1454,6 +1479,10 @@ button, display: inline-flex; } +.table { + display: table; +} + .grid { display: grid; } @@ -1514,10 +1543,6 @@ button, width: 100%; } -.max-w-2xl { - max-width: 42rem; -} - .max-w-3xl { max-width: 48rem; } @@ -1752,6 +1777,11 @@ button, padding-right: 2rem; } +.py-0\.5 { + padding-top: 0.125rem; + padding-bottom: 0.125rem; +} + .py-1 { padding-top: 0.25rem; padding-bottom: 0.25rem; @@ -1806,6 +1836,10 @@ button, text-align: right; } +.font-mono { + font-family: JetBrains Mono, monospace; +} + .font-oxanium { font-family: Oxanium, monospace; } @@ -1885,6 +1919,10 @@ button, color: rgb(255 255 255 / var(--tw-text-opacity, 1)); } +.line-through { + text-decoration-line: line-through; +} + .antialiased { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; @@ -2172,6 +2210,11 @@ article.border.border-border\/30.rounded-lg.overflow-hidden.group.bg-bg { color: var(--accent); } +.first-letter\:text-3xl::first-letter { + font-size: 1.875rem; + line-height: 2.25rem; +} + .hover\:bg-surface:hover { background-color: var(--surface); } diff --git a/themes/danix-xyz-hacker/layouts/shortcodes/dropcap.html b/themes/danix-xyz-hacker/layouts/shortcodes/dropcap.html new file mode 100644 index 0000000..6114678 --- /dev/null +++ b/themes/danix-xyz-hacker/layouts/shortcodes/dropcap.html @@ -0,0 +1 @@ +<span class="text-2xl font-bold first-letter:text-3xl">{{ .Inner }}</span> diff --git a/themes/danix-xyz-hacker/layouts/shortcodes/em.html b/themes/danix-xyz-hacker/layouts/shortcodes/em.html new file mode 100644 index 0000000..a3a096c --- /dev/null +++ b/themes/danix-xyz-hacker/layouts/shortcodes/em.html @@ -0,0 +1 @@ +<em>{{ .Inner }}</em> diff --git a/themes/danix-xyz-hacker/layouts/shortcodes/figure.html b/themes/danix-xyz-hacker/layouts/shortcodes/figure.html new file mode 100644 index 0000000..27d6cb2 --- /dev/null +++ b/themes/danix-xyz-hacker/layouts/shortcodes/figure.html @@ -0,0 +1,8 @@ +{{- $src := .Get "src" -}} +{{- $alt := .Get "alt" -}} +{{- $class := .Get "class" -}} +<figure class="my-6 {{ $class }}"> + {{- if $src -}}<img src="{{ $src }}" alt="{{ $alt }}" class="w-full" />{{ end -}} + {{- .Inner -}} + {{- if .Get "caption" -}}<figcaption class="text-sm text-text-dim mt-2">{{ .Get "caption" }}</figcaption>{{ end -}} +</figure> diff --git a/themes/danix-xyz-hacker/layouts/shortcodes/gal-img.html b/themes/danix-xyz-hacker/layouts/shortcodes/gal-img.html new file mode 100644 index 0000000..b9f8098 --- /dev/null +++ b/themes/danix-xyz-hacker/layouts/shortcodes/gal-img.html @@ -0,0 +1,3 @@ +<div class="{{ .Get "divClass" }}"> + <img src="{{ .Get "src" }}" alt="{{ .Get "alt" }}" class="image fit" /> +</div> diff --git a/themes/danix-xyz-hacker/layouts/shortcodes/highlight.html b/themes/danix-xyz-hacker/layouts/shortcodes/highlight.html new file mode 100644 index 0000000..1b6f12a --- /dev/null +++ b/themes/danix-xyz-hacker/layouts/shortcodes/highlight.html @@ -0,0 +1,3 @@ +{{- $lang := .Get 0 -}} +{{- $opts := .Get 1 | default "" -}} +{{ highlight .Inner $lang $opts }} diff --git a/themes/danix-xyz-hacker/layouts/shortcodes/img.html b/themes/danix-xyz-hacker/layouts/shortcodes/img.html new file mode 100644 index 0000000..2393928 --- /dev/null +++ b/themes/danix-xyz-hacker/layouts/shortcodes/img.html @@ -0,0 +1 @@ +<img src="{{ .Get "src" }}" alt="{{ .Get "alt" }}" class="w-full my-4" /> diff --git a/themes/danix-xyz-hacker/layouts/shortcodes/strike.html b/themes/danix-xyz-hacker/layouts/shortcodes/strike.html new file mode 100644 index 0000000..275b7c1 --- /dev/null +++ b/themes/danix-xyz-hacker/layouts/shortcodes/strike.html @@ -0,0 +1 @@ +<s>{{ .Inner }}</s> diff --git a/themes/danix-xyz-hacker/layouts/shortcodes/youtube.html b/themes/danix-xyz-hacker/layouts/shortcodes/youtube.html new file mode 100644 index 0000000..80cbb93 --- /dev/null +++ b/themes/danix-xyz-hacker/layouts/shortcodes/youtube.html @@ -0,0 +1 @@ +<iframe class="w-full aspect-video my-6" src="https://www.youtube.com/embed/{{ .Get "id" }}" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe> |
