feat: implement IndieWeb microformats compliance across all templates#295
Merged
rochacbruno merged 1 commit intomainfrom Jul 19, 2025
Merged
feat: implement IndieWeb microformats compliance across all templates#295rochacbruno merged 1 commit intomainfrom
rochacbruno merged 1 commit intomainfrom
Conversation
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>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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
Templates Modified
base.html: Add h-card microformat for site identitycontent.html: Add h-entry microformat for blog posts with full semantic markupcontent_authors.html: Add h-card microformat for author profileslist.html: Add h-feed microformat for content collections and h-entry for list itemsgroup.html: Add h-feed and h-entry microformats for grouped contentgroup_author_avatar.html: Add u-photo microformat for avatarsBenefits Enabled
Implementation Details
Documentation
Test plan
Validation
The implementation can be validated using:
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