Files
agora/docs/agora-requirements-08-library.org

4.0 KiB

Agora Requirements - 08: Library

Library

Concept

The Library is a unified content archiving and media management system. It works like a unified *arr suite (Sonarr, Radarr, Readarr, etc.) that builds your personal libraries across all content types.

Supported Content Types

  • Video (movies, TV shows, educational content)
  • Audio (podcasts, music, audiobooks)
  • Photos (personal albums, professional portfolios)
  • Text (books, articles, documents)
  • Maps (geographic data, custom itineraries)
  • Physibles (physical object designs, 3D models)
  • Manufacturing Processes (recipes, procedures, blueprints)

Architecture

The Library consists of three core components:

Downloaders

  • Content acquisition tools that fetch media from various sources
  • Support for torrents, Usenet, direct downloads, and IPFS
  • Integration with content discovery networks
  • Automated quality selection and format conversion
  • Metadata fetching from external databases

Indexers

  • Local search and categorization of library content
  • Full-text search across documents, subtitles, metadata
  • Tag-based organization (genre, year, creator, etc.)
  • Content deduplication via CID comparison
  • Integration with Agora's discovery layer for shared content

Library Managers

  • Content organization and presentation interfaces
  • Unified browsing across all content types
  • Playlist and collection creation
  • Offline sync for mobile clients
  • Sharing controls (personal, collective, public)

Content Addressing

All Library content is stored as CIDs:

  • Original files content-addressed for integrity
  • Metadata stored as separate Content Objects
  • Thumbnails and previews generated and addressed separately
  • Version history maintained via CID chains

Archiving

Concept

Archiving preserves Content Objects and open web content for long-term access, creating personal or collective knowledge repositories that outlive the ephemeral nature of streams.

CID Content Archiving

Personal Archives
  • Users can archive any CID-based content they have access to (public or decrypted)
  • Archive creates local copy with full CID verification
  • Archived Content Objects retain original metadata and provenance
  • Cross-references to related CIDs preserved
Collective Archives
  • Library Collectives can curate themed archives (e.g., "Climate Science", "Digital Art History")
  • Distributed storage across multiple PDS nodes for redundancy
  • Version tracking as Content Objects are updated

Open Web Archiving

Web Archiver Tools
  • Archive any URL to content-addressed storage
  • WARC (Web ARChive) format support for fidelity
  • Text extraction for full-text indexing
  • Media extraction and separate CID addressing
Link Rot Prevention
  • Replace dead links with archived CID versions
  • "Archive this" browser extension for one-click saving
  • Automatic archival of links referenced in user's content
Archival Standards
  • Memento Protocol support for temporal negotiation
  • Archive verification via multiple sources (Wayback Machine, Archive.today, personal PDS)
  • Content authenticity via hash verification against original

Integration with Agora

  • Library content can be referenced in posts, messages, and profiles
  • Content can be shared via Relays with appropriate encryption
  • Micro-payments for premium content access
  • Syndication to Agora-aware browsers and gateways

Requirements

  • The system MUST support unified content management across all media types.
  • The system MUST content-address all library items via CID.
  • The system MUST support local indexing for fast search.
  • The system MUST allow content sharing via Agora's social layer.
  • The system MUST support offline access for synced content.
  • The system MUST integrate with Agora's economic layer for paid content.