Swush

Swush Documentation

Self-hosted files, notes, bookmarks, short links, and media streaming.

Swush is a secure, self-hosted personal hub for files, notes, bookmarks, recipes, snippets, and media streaming. These docs cover setup, configuration, the browser extension, the API, meetings, and day-to-day operations.

What Swush gives you

  • Vault-first storage with folders, tags, favorites, and fast search
  • Streaming + previews for audio/video (HLS) and instant thumbnails
  • Controlled sharing with public links, passwords, view limits, and anonymous sharing
  • Meetings with availability windows, approvals, and optional PayPal payments
  • Knowledge tools (notes, recipes, snippets, bookmarks, short links)
  • Automation via API, GraphQL, Apple Shortcuts, and the browser extension

Architecture at a glance

Swush stores files in local or S3-compatible storage, generates previews and HLS assets asynchronously, and serves playback through the /hls/{slug}/... endpoints. A background job system handles processing and cleanup while the main app focuses on user experience and API access.

Start here

  • New install? Start with Getting Started → Overview
  • Want a fast setup? See Getting Started → Quickstart
  • Configuring storage or uploads? Jump to Configuration
  • API use? See API → OpenAPI or API → GraphQL
  • Meetings? See How-to → Meetings
  • Extension? See Extension → Install

Common workflows

  • Upload and stream media with /api/v1/upload
  • Share a file with optional passwords, view limits, or anonymous mode
  • Schedule meetings with approval flow or auto-accept
  • Organize files using tags and folders
  • Automate capture from browsers or devices
  • OpenAPI JSON: /api/v1/openapi
  • GraphQL: /api/graphql
  • Upload endpoint: /api/v1/upload
  • Files list: /api/v1/files
  • HLS playback: /hls/{slug}/

On this page