selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

GitHub
ClipShare logo

Self-host ClipShare

v1.0.0

Open-source screen recorder with S3 upload

ReleaseOpen SourceMIT
Docker ComposeCompose file & guide
docker-compose up -d
Updated8 months ago
LanguageHCL
Setup difficultyModerate
Stars
371
Requires
S3-compatible Object Storage

What is ClipShare?

ClipShare is a cross-platform desktop application for screen recording built with Electron. It captures screen and optional camera footage, then uploads recordings directly to any S3-compatible object storage — including AWS S3, self-hosted MinIO, or DigitalOcean Spaces — with no backend server required. The app runs from the system tray, supports auto-launch on boot, and packages into native installers for macOS (DMG), Windows (NSIS), and Linux (AppImage). Configuration is via a .env file with S3 credentials, endpoint, region, bucket, and optional URL prefix, ACL, and presigned URLs. An optional Terraform module provisions a production AWS stack (S3, CloudFront, ACM, Route53).

Should you self-host ClipShare?

ClipShare scores 48/100 on selfhost.directory (how scoring works) and ranks #8 of 12 in Video. It has 371 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is moderate: expect some configuration beyond a single command. It is MIT-licensed and written mostly in HCL.

Its closest alternative on selfhost.directory is cap (79/100, 23 977 stars). It scores higher overall, so compare the two before you pick. See ClipShare vs cap side by side.

Features

  • Auto-launch
  • Camera integration
  • Cross-platform
  • Custom URL prefix
  • Presigned URLs
  • Screen Recording
  • Serverless S3 upload
  • System tray icon
  • Terraform AWS deployment

ClipShare README

How to install ClipShare

Install ClipShare with Docker Compose

Docker and Docker Compose
Environment variables
MINIO_ROOT_USER, MINIO_ROOT_PASSWORD
version: '3'
services:
  minio:
    image: minio/minio
    ports:
      - "9000:9000"
      - "9001:9001"
    volumes:
      - ./data:/data
    environment:
      MINIO_ROOT_USER: your_access_key
      MINIO_ROOT_PASSWORD: your_secret_key
    command: server /data --console-address ":9001"

Run docker-compose up -d to start MinIO, then configure ClipShare .env with ENDPOINT=http://localhost:9000

Optional local S3-compatible storage for development/testing

How to configure ClipShare

  • ACCESS_KEYS3 access key ID

    S3 access key ID

  • ACCESS_SECRETS3 secret access key

    S3 secret access key

  • ACLpublic-readCanned ACL for uploaded objects

    Canned ACL for uploaded objects

    values: public-read, private, authenticated-read

  • BUCKET_NAMES3 bucket name for uploads

    S3 bucket name for uploads

  • ENDPOINTS3 service endpoint URL

    S3 service endpoint URL

  • PRESIGN_URLfalseWhether to generate presigned URLs for private buckets

    Whether to generate presigned URLs for private buckets

    values: true, false

  • PRESIGN_URL_EXPIRY86400Presigned URL expiry in seconds

    Presigned URL expiry in seconds

  • REGIONus-east-1S3 region

    S3 region

  • URL_PREFIXOptional custom domain prefix for uploaded file URLs

    Optional custom domain prefix for uploaded file URLs

ClipShare releases & version history

More in Video

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…