Otso

website·Indexed 31 days ago

https://www.otso.run

A local-first toolkit for archiving digital life and owning content across platforms. Otso indexes 23+ data sources, including GitHub, Mastodon, Bluesky, and Twitter/X, using an event-driven design and IndieWeb protocols. It features a TypeScript SDK, a Rust-based indexer, and a CLI for managing imports and publishing via POSSE (Publish on your Own Site, Syndicate Elsewhere) workflows.

Tokens
14.2K
Snippets
73
Records
165
Agent score
53%

What's inside Otso

  1. Overview of the Otso SDK architecture

    The Otso SDK is a small TypeScript-based core that provides a unified API for building interfaces and plugins. It exposes the event log, domain models, and typed commands, ensuring that different surfaces (such as CLI, Web, and iOS) consume the same logic. The SDK utilizes a typed event bus, allowing plugins to react to changes without accessing internal state directly.
  2. Overview of the Otso Desktop Shell

    Otso provides a lightweight desktop shell built with Tauri for macOS, Windows, and Linux. It acts as a wrapper around the Web interface, communicating with the core via Tauri commands. Key features include drag-and-drop ZIP archive imports, local-first storage with system keychain access, a small resource footprint, and auto-updating releases.
  3. Overview of Otso local search and indexing

    Otso is a tool designed to archive your digital life by indexing data from 23+ external sources and providing a local web UI for searching that data. To get started, users clone the repository, build the indexer, and configure their data sources.
  4. Overview of Otso's local-first architecture

    Otso is designed for local-first reliability and data ownership. It uses SQLite and file assets to ensure the system works offline and is easy to back up or sync. To ensure data safety, Otso employs snapshots and idempotent commands for reversible operations, and uses rebuildable projections to contain and recover from potential damage.
  5. Overview of Otso iOS Micropub client

    Otso for iOS is a fast Micropub client designed for one-thumb publishing and quick capture. It features a local-first engine using SQLite for drafts and an outbox queue to ensure retryable synchronization in the background. The app supports IndieAuth login with multi-account capabilities and allows users to compose various post kinds, including notes, articles, photos, replies, reposts, likes, bookmarks, check-ins, and RSVPs. It is built using Swift and SwiftUI.
  6. Overview of AI enrichment features in Otso

    AI features in Otso are completely optional and opt-in; the core functionality of the application works without them. When enabled, AI can be used via local models or hosted services to enrich an archive with the following capabilities:

    • Generating summaries, keywords, or alt-text for imported content.
    • Producing cleaned reading views for saved links.
    • Storing provenance data to allow re-enrichment of content using improved models in the future.
  7. Overview of Otso local-first toolkit

    Otso is a local-first toolkit designed to help users own their content and activity across the web. It indexes digital trails from various sources into a unified, searchable event store on the user's local machine. The system operates as an append-only event log where data flows from sources (SQLite databases) to normalized events, which are then used to create rebuildable projections such as FTS5 search indexes and timeline views.
  8. Overview of the otso CLI

    The otso CLI is a command-line interface used to script and automate core platform operations. It serves as the foundation for other applications and provides capabilities for:

    • Importing archives or APIs using idempotent commands.
    • Publishing posts and cross-posting to external networks.
    • Running enrichers, managing content visibility, and snapshotting the store.
  9. Understand Otso's core architectural concepts

    Otso is built on three primary architectural pillars:

    • Events: Append-only records of actions (imported, enriched, published) that allow for easy auditing and replaying of data.
    • Projections: Derived tables, JSON, or search indexes created from events to enable fast reads. These can be rebuilt on demand.
    • Adapters: Thin plugins used to handle specific logic for sources (imports) and publishers (such as POSSE or Micropub).
  10. Understand and use Otso Emulator Plugins

    Emulator plugins in Otso enable the display of exported local data using a UI that mirrors the original service it was sourced from. Instead of viewing raw archives, users can interact with their data through a reconstructed interface that preserves the layout, behavior, and cultural feel of the original platform. All browsing, searching, and filtering occur locally on the offline backup, ensuring privacy and accessibility even if the original service is defunct.
  11. Export Otso content to external formats

    Otso allows users to export content beyond the generation of a public website, enabling data portability and long-term storage. Planned export targets include zipped archives of full event logs or sites, Markdown or JSONL dumps, and PDF or print-ready bundles for portable collections.
  12. Visualize activity with the Timeline histogram

    Otso includes an interactive histogram for timeline visualization. It supports monthly buckets for aggregated views, color-coded source breakdowns, date range selection for filtering, and category stacking to identify dominant sources over specific periods.