You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
christian 73798036bd
pictshare ci / docker (push) Failing after 1m12s Details
„.gitea/workflows/build-docker.yml“ ändern
2 months ago
.gitea/workflows „.gitea/workflows/build-docker.yml“ ändern 2 months ago
api added copy url button closes #112 1 year ago
content-controllers Unified docker building process. & more updates 2 years ago
css stage 1 of v2 5 years ago
data stage 1 of v2 5 years ago
docker Update 11 months ago
fonts upgraded theme to bootstrap and added support for subdirectory hosting 7 years ago
inc small undefined variable bug fixed 5 months ago
interfaces sync script added and fixed some controllers 3 years ago
js added copy url button closes #112 1 year ago
rtfm updated info on new docker container source 2 months ago
storage-controllers typo . fixes #142 5 months ago
templates fixing gui-upload filesize bug 1 year ago
tmp S3/Minio storage controller Support 3 years ago
tools if p1 was done then don't ask the server for every individual file again 2 years ago
.dockerignore Unified docker building process. & more updates 2 years ago
.gitignore added possibility to have a notice displayed on the upload form 3 years ago
.htaccess unfucked the file permissions 8 years ago
LICENSE stage 1 of v2 5 years ago updated info on new docker container source 2 months ago
favicon.ico updated favicon to a version with transparency 7 years ago
index.php implemented dynamic content controller loading, enabling whitelisting of content types. closes #87 3 years ago

PictShare logo


Apache License HitCount

Host your own images gifs mp4s text bins and stay in control

PictShare demo

[INFO] March '23

Since Docker Hub won't allow team Organizations anymore, we moved our images to GitHub Container Registry. So if you want to use the latest version, please use the new image instead of hascheksolutions/pictshare

Table of contents


docker run -d -p 8080:80 --name=pictshare

Then open http://localhost:8080 in your browser

New Features in v2

  • Added support for external storage
  • Encryption of files in external storage
  • Added text hosting (like pastebin)
  • Added URL shortening
  • Added WebP to images (and conversion from jpg,png to webp)
  • Massive code rework. Actually we designed it from the ground up to be more modular and easier to debug


  • Selfhostable
  • Simple upload API
  • 100% file based - no database needed
  • Scalable
  • Many Filters for images
  • GIF to MP4 conversion
  • JPG, PNG to WEBP conversion
  • MP4 resizing
  • PictShare removes all exif data so you can upload photos from your phone and all GPS tags and camera model info get wiped
  • Change and resize your uploads just by editing the URL
  • Duplicates don't take up space. If the exact same file is uploaded twice, the second upload will link to the first
  • Many configuration options
  • Full control over your data. Delete images with individual and global delete codes

Development roadmap

  • Duplicate detection
  • Write permission detection
  • Delete codes for every uploaded file
  • Upload via link/url
  • Upload via base64
  • Autodestruct for every uploaded file

Config options

Read here what those options do

  • URL (instead of FORCE_DOMAIN but mandatory)

Image hosting

  • Resizing
  • Filters
  • Gif to mp4 conversion
  • Upload of images

Text file hosting

  • Upload of text files
  • Render template for text files
  • Raw data view
  • Downloadable

URL shortening

  • Upload of links to shorten

MP4 hosting

  • Resizing
  • Preview image generation
  • Upload of videos
  • Automatic conversion if not mobile friendly or wrong encoder used
  • Render template for videos

This is a HASCHEK SOLUTIONS project

HS logo