Files
pw/src/pages/blog/index.astro
T
Asger Geel WeirsøeandClaude Opus 4.8 80c820bdff site: full Astro source + blog posts, Gitea Actions deploy to CT148
Replaces the placeholder repo with the asger.weirsoe.dk site source.
Adds 6 blog posts (Proxmox, Authentik/OIDC, NPMplus migration, JS injection,
ah-fail) and .gitea/workflows/deploy.yml (bun build + rsync over SSH).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-11 19:13:47 +02:00

21 lines
862 B
Plaintext

---
import { getCollection } from 'astro:content';
import Base from '../../layouts/Base.astro';
import PostCard from '../../components/PostCard.astro';
const posts = (await getCollection('blog', ({ data }) => !data.draft))
.sort((a, b) => b.data.date.getTime() - a.data.date.getTime());
---
<Base title="Blog" description="Indlæg om selvhosting, Proxmox, AI og udvikling.">
<div class="flex items-baseline justify-between">
<h1 class="text-4xl font-bold tracking-tight">Blog</h1>
<a href="/tags" class="text-sm text-accent hover:underline">Tags</a>
</div>
<div class="mt-8 grid gap-4">
{posts.map((p) => (
<PostCard href={`/blog/${p.id}`} title={p.data.title} date={p.data.date} description={p.data.description} tags={p.data.tags} />
))}
{posts.length === 0 && <p class="text-muted">Ingen indlæg endnu.</p>}
</div>
</Base>