Rhizomatic Threading: Multi-Dimensional Conversations

No hierarchy. No root. No single path. Just connections.


The Philosophy

From Deleuze & Guattari's "A Thousand Plateaus" (1980):

"A rhizome has no beginning or end; it is always in the middle, between things, interbeing, intermezzo. The tree is filiation, but the rhizome is alliance, uniquely alliance."

Traditional social networks are arborescent (tree-like): one post, one thread, one conversation. Break one link, and the thread dies.

Rhizome is rhizomatic: any node can connect to any other. Posts reference multiple concepts, works, places, and other posts simultaneously. Conversations emerge organically from these connections, not from imposed structure.


How It Works

Multi-Dimensional Referencing

Instead of linear threading (Post A → Comment B → Comment C), we use multi-dimensional referencing:

Post/Comment Event:
  - in_reply_to: [post_uri]  (direct conversation thread)
  - references: [
      "akashic://cultural/movement/surf-movies-1960s",
      "akashic://cultural/album/pet-sounds-1966", 
      "akashic://place/tower-of-london",
      "https://example.com/article-123"  (external references)
    ]

Key Features

  1. Multi-Parent References: A post can reference multiple things simultaneously
  2. Taxonomic Integration: Leverages Akashic Universal Mapping system for canonical URIs
  3. Graph-Based Conversations: Conversations become "everything referencing X" rather than linear chains
  4. No Broken Threads: Missing posts don't break the graph—each node is independent
  5. Multi-Dimensional Navigation: View conversations by post, concept, work, place, etc.

Implementation

Event Schema

COMMENT Event:

{
  "event_type": "COMMENT",
  "payload": {
    "content": "This reminds me of surf movies...",
    "target_uri": "https://rhizome.example/post/123",  // Direct reply
    "references": [  // Additional references
      "akashic://cultural/movement/surf-movies-1960s",
      "akashic://cultural/album/pet-sounds-1966",
      "akashic://place/tower-of-london"
    ]
  }
}

POST Event:

{
  "event_type": "POST",
  "payload": {
    "content": "Thinking about the Tower of London...",
    "visibility": "public",
    "references": [
      "akashic://place/tower-of-london",
      "akashic://cultural/book/author-title"
    ]
  }
}

Query Patterns

# Get all posts referencing a cultural movement
events = RhizomeEvent.query.filter(
    RhizomeEvent.payload['references'].contains(['akashic://cultural/movement/surf-movies-1960s'])
).all()

# Get conversation around a post (direct replies)
events = RhizomeEvent.query.filter(
    RhizomeEvent.payload['target_uri'] == post_uri
).all()

# Get all conversations about Pet Sounds
events = RhizomeEvent.query.filter(
    RhizomeEvent.payload['references'].contains(['akashic://cultural/album/pet-sounds-1966'])
).all()

User Experience

Compose Interface

Display Interface

Navigation


Technical Foundation

Database Schema

RhizomeEvent Model:
- Keep existing payload JSON field
- References stored in payload.references array
- No schema change needed—just extend JSON structure

Performance

PostgreSQL JSONB + GIN Index:
- jsonb_path_ops index provides ~1000x speedup for containment queries
- Sub-millisecond queries for "find all posts referencing X"
- Efficient graph traversal

ActivityPub Compatibility

Multi-References → ActivityPub:
- Use context property for semantic references
- Custom rhizome:references property for lossless round-trip
- Compatible with Mastodon and other ActivityPub implementations


What This Enables

Multi-Dimensional Conversations: Reference concepts, works, places, and posts simultaneously
No Broken Threads: Each node is independent—missing posts don't break the graph
Graph Visualization: See connections across dimensions
Semantic Discovery: Find conversations by concept, not just by thread
Cultural Integration: Books, movies, music become first-class conversation participants
Emergent Patterns: Conversations reveal themselves through graph visualization


Design Principles

  1. Rhizomatic Over Arborescent: Multiple entry points, no hierarchy
  2. Taxonomic Integration: Leverage existing canonical content system
  3. Event-Sourced: All references stored in event payload
  4. Graph-Friendly: Queries optimized for graph traversal
  5. Backward Compatible: Existing posts work without references
  6. User-Friendly: Users don't need to know Akashic URIs (UI handles it)

The Adventure Ahead

This is Roam Research meets ActivityPub—bidirectional semantic linking for social conversations. No other federated social platform does this.

We're combining:
- Roam's multi-reference linking (networked thought)
- ActivityPub federation (decentralized social)
- Semantic web principles (canonical URIs)
- Event sourcing (tamper-proof, exportable)

Welcome to the rhizome. 🌿

← Back to Splash