gossa
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
mpr
binaries are available on the release page
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