Skip to content

feat: implement IndieWeb microformats compliance across all templates#295

Merged
rochacbruno merged 1 commit intomainfrom
feat/indieweb-microformats
Jul 19, 2025
Merged

feat: implement IndieWeb microformats compliance across all templates#295
rochacbruno merged 1 commit intomainfrom
feat/indieweb-microformats

Conversation

@rochacbruno
Copy link
Copy Markdown
Owner

Summary

This PR implements comprehensive IndieWeb microformats compliance across all Marmite templates, making blogs fully compatible with decentralized web standards and IndieWeb tools.

Key Features

  • h-card microformats: Site identity and author profiles with name, photo, URL, bio
  • h-entry microformats: Blog posts with semantic markup for title, content, date, categories
  • h-feed microformats: Content collections and feeds for enhanced discoverability
  • Semantic properties: p-name, u-url, dt-published, e-content, p-category markup
  • Backward compatibility: All changes are purely additive, no breaking changes

Templates Modified

  • base.html: Add h-card microformat for site identity
  • content.html: Add h-entry microformat for blog posts with full semantic markup
  • content_authors.html: Add h-card microformat for author profiles
  • list.html: Add h-feed microformat for content collections and h-entry for list items
  • group.html: Add h-feed and h-entry microformats for grouped content
  • group_author_avatar.html: Add u-photo microformat for avatars

Benefits Enabled

  • Enhanced Discoverability: Feed readers and search engines can better parse content
  • Improved SEO: Search engines understand content structure and relationships
  • Better Social Sharing: Rich preview cards with proper metadata
  • IndieWeb Compatibility: Ready for webmentions, POSSE, and other IndieWeb tools
  • Future-Proof: Based on open web standards

Implementation Details

  • Follows official microformats2 specifications
  • Uses proper semantic HTML with microformat classes
  • Includes invisible data elements for complete machine-readable information
  • Nested h-card microformats for author information within posts
  • ISO 8601 datetime stamps for all published dates
  • Canonical URLs for all entries

Documentation

  • Added comprehensive blog post explaining IndieWeb compliance
  • Includes implementation details and getting started guide
  • Provides validation tools and testing instructions
  • Documents benefits for users and developers

Test plan

  • Build example site successfully with new templates
  • Verify all microformat classes are properly applied
  • Test backward compatibility with existing functionality
  • Validate microformat output with microformats.io parser
  • Ensure no visual changes to site appearance
  • Confirm RSS/JSON feeds remain valid
  • Test social media preview functionality

Validation

The implementation can be validated using:

  • microformats.io - Parse and validate microformat data
  • IndieWebify.Me - Step-by-step IndieWeb validation
  • Browser developer tools to inspect microformat classes

Example parsed h-entry output:

{
  "type": ["h-entry"],
  "properties": {
    "name": ["Post Title"],
    "published": ["2025-07-19T10:00:00Z"],
    "content": [{"html": "...", "value": "..."}],
    "category": ["tag1", "tag2"],
    "author": [{"type": ["h-card"], "properties": {...}}]
  }
}

🤖 Generated with Claude Code

Add comprehensive IndieWeb microformat support to make Marmite blogs
fully compliant with decentralized web standards. This enables better
discoverability, machine-readable content, and interoperability with
IndieWeb tools and services.

Template changes:
- base.html: Add h-card microformat for site identity
- content.html: Add h-entry microformat for blog posts with proper
  semantic markup for title, content, author, date, and categories
- content_authors.html: Add h-card microformat for author profiles
- list.html: Add h-feed microformat for content collections and
  h-entry for list items, plus h-card for author profiles
- group.html: Add h-feed and h-entry microformats for grouped content
- group_author_avatar.html: Add u-photo microformat for avatars

Microformat implementations:
- h-card: Site identity, author profiles with name, photo, URL, bio
- h-entry: Blog posts with name, URL, published date, content, categories
- h-feed: Content collections with proper feed structure
- p-category: Tag and category semantic markup
- dt-published: ISO 8601 datetime stamps for all content
- u-url: Canonical URLs for all entries
- e-content: Full post content markup

Features enabled:
- Enhanced feed reader compatibility
- Better search engine understanding
- Improved social media previews
- IndieWeb tool interoperability
- Future webmention and POSSE support

Add comprehensive blog post documenting IndieWeb compliance benefits,
implementation details, and getting started guide.

All changes are backward compatible and purely additive.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
@rochacbruno rochacbruno merged commit 881c7c9 into main Jul 19, 2025
3 checks passed
@rochacbruno rochacbruno deleted the feat/indieweb-microformats branch July 19, 2025 19:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant