Skip to content

๐ŸŽถ a fast and simple multimedia fileserver

License

Notifications You must be signed in to change notification settings

pldubouilh/gossa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

gossa

e

build status docker pulls github downloads

a fast and simple webserver for your files, that's dependency-free and with under 250 lines of code, easy to review.

a simple UI comes as default, featuring :

  • ๐Ÿ” files/directories browser & handler
  • ๐Ÿ“ฉ drag-and-drop uploader
  • ๐Ÿ’พ 90s web UI that prints in milliseconds
  • ๐Ÿ“ธ video streaming, picture browser, pdf viewer
  • โœ๏ธ simple note editor
  • โŒจ๏ธ keyboard navigation
  • ๐Ÿš€ lightweight and dependency free codebase
  • ๐Ÿ”’ >95% test coverage and reproducible builds
  • ๐Ÿฅ‚ fast golang static server
  • ๐Ÿ’‘ easy multi account setup, read-only mode
  • โœจ PWA-able
  • ๐Ÿ–ฅ๏ธ multi-platform support

install / build

arch linux (AUR) - e.g. yay -S gossa

nix - e.g. nix-shell -p gossa

binaries are available on the release page - or simply make build this repo.

all builds are reproducible, checkout the hashes on the release page.

usage

% ./gossa --help

% ./gossa -h 192.168.100.33 ~/storage

shortcuts

press Ctrl/Cmd + h to see all the UI/keyboard shortcuts.

fancier setups

release images are pushed to dockerhub, e.g. :

# pull from dockerhub and run
% mkdir ~/LocalDirToShare
% sudo docker run -v ~/LocalDirToShare:/shared -p 8001:8001 pldubouilh/gossa

in a do-one-thing-well mindset, HTTPS and authentication has been left to middlewares and proxies. sample caddy configs are available to quickly setup multi users setups along with https.

automatic boot-time startup can be handled with a user systemd service - see support