Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/xrstf/hosty
Minimal text/image/file selfhosting app written in Go
https://github.com/xrstf/hosty
Last synced: about 2 months ago
JSON representation
Minimal text/image/file selfhosting app written in Go
- Host: GitHub
- URL: https://github.com/xrstf/hosty
- Owner: xrstf
- License: other
- Created: 2016-03-28T21:41:48.000Z (over 8 years ago)
- Default Branch: main
- Last Pushed: 2023-12-18T23:17:10.000Z (about 1 year ago)
- Last Synced: 2024-06-20T12:40:59.868Z (6 months ago)
- Language: Go
- Size: 1.98 MB
- Stars: 14
- Watchers: 3
- Forks: 1
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
Hosty - File Hosting for Minimalists
====================================Hosty is a tiny Go application to host arbitrary files on your own webserver.
It's meant to be as small as possible and hence offers only the following:* Users configured in the config file can upload files. Optionally, they can
also paste code (à la pastebin) with simple syntax highlighting based on
Pygments.
* Each file gets a randomized URL. Everyone who has the URL can access the
content.
* Files are simply stored in the filesystem; a minimal SQLite3 database keeps
track of them.
* Files can destruct themselves on first access and expire after a certain
amount of time.
* Files can be either public (accessible for everyone who has a link to them),
internal (only accessible for logged-in users) or private (only for the
owner).
* Content can be deleted by their respective owners.
* Login via OAuth (Google, GitHub) is possible, but you have to create your own
apps to do so.That's it. There is no admin UI, no commenting, no tagging, no folders, no
social media crap or other external resources.Requirements
------------* Go 1.20
* On Windows, you need to be able to build [go-sqlite3](https://github.com/mattn/go-sqlite3).For working on the frontend UI, you will also need Grunt, Bower and npm. Sorry.
Installation
------------* ``go install go.xrstf.de/hosty`` -- please use ``make`` to make (sic) sure
that the version stamp is correct.
* Copy the ``config.yaml.dist``, name it as you like (e.g. ``config.yaml``) and
adjust it to your needs.
* Run hosty via ``./hosty serve config.yaml``.If you want, you can use the ``resources/systemd/hosty.service`` as an example
for a systemd service.Screenshots
-----------### Login screen
![Login Screen](https://h.xrstf.de/r/PGEpXOMTeLjhnQmrTBeThjSVjZVpgMjCvuRBbKaekm/hosty-login.png)
### File Upload View
![File Upload View](https://h.xrstf.de/r/PEzXhNNHgQCXwyrgOuZTLxEUddjQWxcIRWlBMsQWuD/hosty-index.png)
### Mobile View
![Mobile View](https://h.xrstf.de/r/ITeJyfdWXZKnfsTCNfpEihInQzJnqeFRQfqOQorzEG/hosty-mobile.png)
### Image View
![Image View](https://h.xrstf.de/r/MeVpSQXspEWcSxxCVHlHVcwGxqoTZZnZYSNzUBYXFb/hosty-image.png)
### Text View
![Text View](https://h.xrstf.de/r/ZAbkAPInDWAQRUrKnCFpZjLhAGGhkxGqqpoDPPwwWK/hosty-text.png)
### File View
![File View](https://h.xrstf.de/r/BuHLIbyCNMEbbOgDgocQAwigxWIVuOPGSYhmnkPUxG/hosty-file.png)
License
-------Hosty is licensed under the MIT license.