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.

shotshare logo

Self-host shotshare

v1.11.0

Self-hosted image sharing platform for screenshots

ReleaseOpen SourceMIT
Docker ComposeCompose file & guide
docker compose up
Updated2 years ago
LanguagePHP
Setup difficultyModerate
Stars
179
Ports
80 (HTTP), 443 (HTTPS)
Docker
mdshack/shotshare

What is shotshare?

ShotShare is an open-source, self-hosted image sharing platform built for friends to upload screenshots and share links without ads or unnecessary features. It provides a minimal interface for image uploads with support for reactions (upvote/downvote), UUID-based routes, and configurable link formats including Markdown, BBCode, and HTML. The application runs via Docker with Caddy for automatic HTTPS, uses SQLite by default with optional MySQL or PostgreSQL, and integrates with ShareX and Shutter screenshot tools through API keys. It includes artisan commands for maintenance like cleaning images and creating users when registration is disabled.

Should you self-host shotshare?

shotshare scores 45/100 on selfhost.directory (how scoring works) and ranks #5 of 9 in Image Management. It has 179 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. An official Docker image is available. It is MIT-licensed and written mostly in PHP.

Its closest alternative on selfhost.directory is Slink (59/100, 1 614 stars). It scores higher overall, so compare the two before you pick. See shotshare vs Slink side by side.

Features

  • API Keys
  • Artisan Commands
  • Automatic HTTPS
  • Configurable upload limits
  • Footer Credits
  • Force HTTPS Behind Proxy
  • Image Upload
  • Link Sharing
  • Multiple database supportSQLite is default
  • Multiple Link Formats
  • Reactions
  • ShareX integration
  • Shutter IntegrationCommunity plugin
  • User Registration Control
  • UUID RoutesWill be default in 2.0.0

shotshare README

How to install shotshare

Install shotshare with Docker

Docker, persistent storage for database.sqlite and .env
Environment variables
HOST, FEATURE_UUID_ROUTES, FORCE_HTTPS, and all config options

docker run
-p 80:80
-p 443:443
-e HOST=localhost
-e FEATURE_UUID_ROUTES=true
-v shotshare_caddy_data:/data/caddy
-v shotshare_caddy_config:/config/caddy
-v shotshare_data:/app/storage/app/uploads
--mount type=bind,source=/shotshare/database.sqlite,target=/app/database/database.sqlite
--mount type=bind,source=/shotshare/.env,target=/app/.env
-d
--restart unless-stopped
--name shotshare
mdshack/shotshare:latest

HTTPS mode with Caddy automatic HTTPS

How to configure shotshare

  • ALLOW_REGISTRATIONtrueAllows new users to register

    Allows new users to register

    values: true, false

  • DB_CONNECTIONsqliteIndicates what database connection will be used

    Indicates what database connection will be used

    values: sqlite, mysql, pgsql, sqlsrv

  • DB_DATABASEshotshareNot required if using sqlite, indicates the database database

    Not required if using sqlite, indicates the database database

  • DB_HOST127.0.0.1Not required if using sqlite, indicates the database host

    Not required if using sqlite, indicates the database host

  • DB_PASSWORDNot required if using sqlite, indicates the database password

    Not required if using sqlite, indicates the database password

  • DB_PORT3306Not required if using sqlite, indicates the database port

    Not required if using sqlite, indicates the database port

  • DB_USERNAMEshotshareNot required if using sqlite, indicates the database username

    Not required if using sqlite, indicates the database username

  • FEATURE_FOOTERtrueAdds credits footer (Made with love + Check out source code)

    Adds credits footer (Made with love + Check out source code)

    values: true, false

  • FEATURE_REACTIONStrueAdds shot reactions (ability to upvote/downvote shots)

    Adds shot reactions (ability to upvote/downvote shots)

    values: true, false

  • FEATURE_UUID_ROUTESfalseUtilizes UUIDs instead of IDs, will be the default in 2.0.0

    Utilizes UUIDs instead of IDs, will be the default in 2.0.0

    values: true, false

  • FORCE_HTTPSfalseForce ShotShare to utilize HTTPS links when behind a reverse proxy

    Force ShotShare to utilize HTTPS links when behind a reverse proxy

    values: true, false

  • HOSTlocalhostPublic host used by Caddy, thanks to caddy, this host will automatically be issued a SSL certificate

    Public host used by Caddy, thanks to caddy, this host will automatically be issued a SSL certificate

  • PHP_MAX_UPLOADS20Max number of file uploads in a single request

    Max number of file uploads in a single request

  • PHP_MEMORY_LIMIT128MMemory limit for PHP FPM

    Memory limit for PHP FPM

  • PHP_POST_MAX_SIZE8MMax size of a POST request

    Max size of a POST request

  • PHP_UPLOAD_MAX_FILESIZE2MMax allowed upload size (Must include file size unit)

    Max allowed upload size (Must include file size unit)

  • SHOTS_LINKS_BBCODEtrueIndicates if the BBCode link will be displayed on the shot screen

    Indicates if the BBCode link will be displayed on the shot screen

    values: true, false

  • SHOTS_LINKS_DIRECT_LINKtrueIndicates if the Direct Link will be displayed on the shot screen

    Indicates if the Direct Link will be displayed on the shot screen

    values: true, false

  • SHOTS_LINKS_HTMLtrueIndicates if the HTML link will be displayed on the shot screen

    Indicates if the HTML link will be displayed on the shot screen

    values: true, false

  • SHOTS_LINKS_MARKDOWN_OTHERtrueIndicates if the Markdown (GitHub & StackOverflow) link will be displayed on the shot screen

    Indicates if the Markdown (GitHub & StackOverflow) link will be displayed on the shot screen

    values: true, false

  • SHOTS_LINKS_MARKDOWN_REDDITtrueIndicates if the Markdown (Reddit) link will be displayed on the shot screen

    Indicates if the Markdown (Reddit) link will be displayed on the shot screen

    values: true, false

  • SHOTS_LINKS_SHARE_LINKtrueIndicates if the Share Link will be displayed on the shot screen

    Indicates if the Share Link will be displayed on the shot screen

    values: true, false

shotshare releases & version history

More in Image Management

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…