Static blog site generator in one Go binary: Markdown in, self-contained semantic HTML out. No JavaScript, no database, minimal deps.

Feeds: add JSON Feed (feed.json) #21

Merged janantos.tngl.sh
targeting main from json-feed
Merged opened by and assigned to janantos.tngl.sh
targeting main from json-feed

JSON Feed (https://jsonfeed.org/version/1) alongside RSS and Atom: Site.JSONFeed renders the same feedPosts newest-first items with full post HTML in content_html, the frontmatter description in summary, per-post tags, RFC 3339 date_published, and the site author/header fields. The item id and url are the post's absolute URL, so a site behind a base path feeds correct links.

  • build writes feed.json on every build
  • rel=alternate discovery link (application/feed+json) on every page
  • mfblog serve serves it live under the base path
  • tests: feed structure/header/items, file in build output, alternate link under a base path, pages stay out of the feed, serve route and media type
  • README and AGENTS.md; showcase rebuilt (the sitemap diff is the pre-existing time.Now() home lastmod crossing midnight, not this feature)
Commits 0