<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dennisfink.me/templates/macros, branch main</title>
<subtitle>Source files of my personal blog.</subtitle>
<id>https://git.dennisfink.me/dennisfink.me/atom/templates/macros?h=main</id>
<link rel='self' href='https://git.dennisfink.me/dennisfink.me/atom/templates/macros?h=main'/>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/dennisfink.me/'/>
<updated>2026-08-17T18:00:16Z</updated>
<entry>
<title>Add post changelogs</title>
<updated>2026-08-17T18:00:16Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-08-17T17:36:16Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/dennisfink.me/commit/?id=2b2d89ffd233e331a6985fe762ac339befc972a3'/>
<id>urn:sha1:2b2d89ffd233e331a6985fe762ac339befc972a3</id>
<content type='text'>
This replaces the manual `updated_date` field with a changelog flow
field so post updates can be recorded as dated entries.

The blog template now derives the "Last updated" metadata from the
latest changelog entry and renders the full changelog in the article
footer, with dedicated styling for compact change notes.
</content>
</entry>
<entry>
<title>Add GPX trail maps to blog posts</title>
<updated>2026-07-22T22:18:21Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-07-22T22:18:21Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/dennisfink.me/commit/?id=1fe1d13c600b7dfe421b3b99b833b7d5d1232724'/>
<id>urn:sha1:1fe1d13c600b7dfe421b3b99b833b7d5d1232724</id>
<content type='text'>
This adds a trail flow block so posts can include attached GPX files as
interactive maps with route display, elevation charts, activity
summaries, and start/finish markers.

The trail assets are loaded only when needed, keeping the shared
templates clean while vendoring the Leaflet dependencies required for
offline, self-hosted map rendering.
</content>
</entry>
<entry>
<title>Make article tags wrap like inline text</title>
<updated>2026-07-22T22:16:14Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-07-22T22:16:14Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/dennisfink.me/commit/?id=ca77de06be474dfd712402c327dc436864d233a3'/>
<id>urn:sha1:ca77de06be474dfd712402c327dc436864d233a3</id>
<content type='text'>
This moves the “Tagged with” label into the tag list itself, so the
footer can wrap naturally like a paragraph instead of splitting the
label and tags onto separate alignment contexts.

The CSS now treats each tag item as inline text while keeping later
items together, which avoids awkward line breaks after the label.
</content>
</entry>
<entry>
<title>Add structured data and microformats</title>
<updated>2026-07-14T17:38:31Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-07-14T17:38:31Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/dennisfink.me/commit/?id=5c65f40bbca27dfb26e75cb027f287b2aa78cd3a'/>
<id>urn:sha1:5c65f40bbca27dfb26e75cb027f287b2aa78cd3a</id>
<content type='text'>
This adds JSON-LD for the site, author, blog, and individual blog posts, so
search engines and other consumers can understand the blog structure more
clearly.

It also adds Microformats2 classes to blog posts and the about page, keeping
machine-readable author, post, category, date, and content data attached to the
visible HTML.
</content>
</entry>
<entry>
<title>Build the first usable version of the blog</title>
<updated>2026-06-18T15:57:51Z</updated>
<author>
<name>Dennis Fink</name>
</author>
<published>2026-06-18T15:57:51Z</published>
<link rel='alternate' type='text/html' href='https://git.dennisfink.me/dennisfink.me/commit/?id=a4e35942fee745e64db5d0099ba2582e0fb4417e'/>
<id>urn:sha1:a4e35942fee745e64db5d0099ba2582e0fb4417e</id>
<content type='text'>
This adds the Lektor project structure, models, templates, styling,
feeds, categories, tags, archives, custom Markdown heading handling, and
the initial content needed to make the blog usable.
</content>
</entry>
</feed>
