wordpress-activitypub icon indicating copy to clipboard operation
wordpress-activitypub copied to clipboard

Idea: Federated Pinterest-style Board with ActivityPub

Open Jiwoon-Kim opened this issue 6 months ago β€’ 2 comments

πŸ“Œ Idea: Federated Pinterest-style Board with ActivityPub

πŸ” Why?

  • Most current ActivityPub implementations focus on:
    • Text (Mastodon)
    • Images (Pixelfed)
    • Videos (Peertube)
    • Articles (WordPress, WriteFreely)

But no federated service focuses on curated image boards with re-share (re-note/boost) functionalities.


πŸ“Œ Core Features

Feature Status (existing fediverse) Notes
Image post βœ… Pixelfed Standard Note/Article with attachments
Board (collection) ❌ Would need to extend ActivityPub spec
Re-share (Re-pin) βœ… Mastodon Announce Works for Notes but not for Collections
Comment thread βœ… via replies Standard
Multi-source embedding ❌ Currently per-item Announce only

πŸ“Œ Possible Approach

  1. Define a new Board Activity/Type

    {
      "@context": "https://www.w3.org/ns/activitystreams",
      "type": "Board",
      "name": "My Dream Travel",
      "attributedTo": "https://example.com/@jiwoon",
      "orderedItems": [
        "https://example.com/@jiwoon/posts/1",
        "https://pixelfed.social/@user/photos/2"
      ]
    }
    
    
    
  2. Allow Announce (boost) of a Board or individual image posts

  3. Implement multi-quote/re-note via Board aggregation

  4. Optional federated commenting on Boards


πŸ“Œ Bonus: WordPress Compatibility

With Blocks Everywhere + ActivityPub, WordPress can function as a board-style post aggregator:

Each block = one federated image/note

Whole post = federated Board (custom activity)

Support multi-source embeds (Mastodon, Misskey, Pixelfed)


πŸ“Œ Conclusion

A federated Pinterest-like platform would fill a big missing niche in the Fediverse. If anyone’s interested in prototyping this concept β€” count me in!

Federation isn’t just about microblogs and video β€” let’s federate inspiration. ✨

Jiwoon-Kim avatar Jun 20 '25 17:06 Jiwoon-Kim

μ’‹μ•„ β€” μ˜μ–΄λ‘œ λ§ˆν¬λ‹€μš΄ 정리해봀어. μ•„λž˜μ²˜λŸΌ:


πŸ“Œ Problem: One Handle, Multiple Content Types in WordPress ActivityPub

In the current ActivityPub implementation for WordPress, when you use a single Fediverse handle to publish various types of content β€” like:

WordPress Content Type ActivityPub Type How It Appears in Mastodon
Blog post Article Article card / link preview
Microblog note Note Short text post
Photolog (Instagram-style) Image + Note Image post
Podcast episode Audio Media card
Pinterest-style collection Custom (needs defining) Not visible / unsupported
Media Library uploads Attachment Not displayed

All of these get mixed together in the same outbox, causing the Fediverse profile feed to become messy on clients like Mastodon and Misskey, which aren't designed to distinguish these content types from a single handle.


πŸ“Œ Possible Solutions:

1️⃣ Multiple Handles (Sub-handles)

Use multiple Fediverse handles on the same instance:

Each handle manages a different type of content stream.


2️⃣ Separate Outbox Endpoints by Type

Serve different content types through separate ActivityPub outbox endpoints:

  • /outbox/blog
  • /outbox/photo
  • /outbox/podcast

Clients like Mastodon won’t understand these natively, but other WordPress + compatible ActivityPub themes/plugins could federate with them.


3️⃣ ActivityPub Collection-based Custom Profile Page

On the WordPress side, build a custom ActivityPub-compliant profile page that provides separate collections:

  • πŸ“– Blog Posts
  • πŸ“Έ Photolog
  • πŸŽ™οΈ Podcasts

This won't display natively on Mastodon, but would work perfectly on ActivityPub-supported WordPress instances.


πŸ“Œ Conclusion

If you dump everything into one handle, the Fediverse profile feed becomes unmanageable on traditional clients.
However, for WordPress-to-WordPress federated networks, it's completely fine and even advantageous.

The cleanest long-term implementation would combine:

  • Multi-handle support
  • Custom outbox routes or Collection links
  • Fediverse-compatible UI themes

Should we draft this up formally as a proposal or feature discussion? I can help mock up the UI/UX flow too if you’d like. πŸš€

Jiwoon-Kim avatar Jun 20 '25 17:06 Jiwoon-Kim

πŸ“Œ Idea: WordPress ActivityPub-based Pinterest-style Platform

Concept: Use WordPress as a federated, ActivityPub-enabled Pinterest-style platform where users can publish image posts (photolog entries) as ActivityPub Note or Image objects with attachments.

Each post functions like a federated pin, and collections (boards) can be implemented using ActivityPub Collection or OrderedCollection objects, or via custom taxonomies (categories/tags).


πŸ“– Key Features:

  • Custom post type: pin
  • Federated via ActivityPub
  • Media Library integration (with user-specific virtual folders or ownership meta)
  • ActivityPub Collections for Boards
  • Re-share (Boost / Announce) support
  • Federated comments via Blocks Everywhere plugin
  • Option to embed posts from external Fediverse instances (Mastodon, Misskey, Pixelfed)

πŸ“Œ Future Integration: Openverse

Once the platform is stable:

  • Explore integrating Openverse as a federated content search and curation tool.
  • Allow pins/posts to query Openverse for openly licensed images via REST API or ActivityPub extension.
  • Federate Openverse search results as temporary Note objects or Collection items.

πŸ“Š Possible Data Structure

Content Type ActivityPub Type WordPress Mapping
Pin (Image post) Note with attachment Custom Post Type: pin
Board (Collection of pins) Collection or OrderedCollection Custom taxonomy: board
Re-pin Announce Custom action (or duplicate post ID with source attribution)
Comment Note Block Editor + Blocks Everywhere

πŸ“Œ Expected Challenges:

  • Managing Media Library access control per user / federated identity.
  • Pin re-share attribution chain tracking.
  • Cross-instance pin embedding and canonical URL handling.
  • ActivityPub limitations for multi-image posts and collection nesting.

Jiwoon-Kim avatar Jun 21 '25 06:06 Jiwoon-Kim

The problem here: If there is no other platform to federate with, it makes no sense to implement this in WordPress. Even less, because WordPress does not yet support following other sites.

pfefferle avatar Jun 25 '25 11:06 pfefferle

@pfefferle My original intention here was to experiment with breaking the storage limitations of instance media libraries β€” something like a decentralized openverse, enabling distributed cloud-style storage for custom emojis and media assets. It was more of an exploratory idea toward federated, shareable media pools. I hope this concept finds its way back onto the table someday.

Jiwoon-Kim avatar Jun 25 '25 14:06 Jiwoon-Kim

Sure, maybe this will make its way back at some point β€” but for now, we're focused on implementing the core ActivityPub spec, prioritizing interoperability with existing platforms.

First: Catch up. Then: Innovate πŸ˜‰

pfefferle avatar Jun 25 '25 15:06 pfefferle