HFS is a file server offering a virtual file system (vfs). You can easily share a single file instead of the whole folder, or you can rename it, but without touching the real file, just virtually.
Listing files, searching files, zipping folders, it's all very fast, streamed while data is produced, so you don't have to wait.
This project is in an early stage and distribution will be made easier.
This is a full rewrite of the Delphi version. You won't find all previous features here (yet), but still we got:
- https
- unicode
- virtual file system
- mobile friendly front-end
- search
- accounts
- resumable downloads
- download folders as zip archive
- simple website serving
- plug-ins
- log file
- speed throttler
- admin web interface
- virtual hosting (plug-in)
- anti-brute-force (plug-in)
- go to https://github.com/rejetto/hfs/releases
- click on
Assets
- download the right version for your computer
- launch
hfs
file - the browser should automatically open on
localhost
address, so you can configure the rest
If you are installing HFS on "another" machine, then step 5 may not be possible.
In this case you should create a config.yaml
file with this content:
accounts:
YOUR-USERNAME:
admin: true
password: YOUR-PASSWORD
This way you'll have your admin account. Be sure to respect spaces/indentation.
Don't worry about the password, it will be encrypted at first run.
If your system is not Windows/Linux/Mac, you can try this alternative version:
- install node.js version 16+ from https://nodejs.org/
- download and unzip
hfs-node.zip
- launch
./run
To install a plugin you just copy its folder inside plugins
folder.
Delete it to uninstall.
HFS will ignore all folders with -disabled
at the end of the name.
As you can see from the list of features, we already have some goods that you cannot find in HFS 2. Other than that, you can also consider:
- it's more robust: it was designed to be an always-running server, while HFS 1-2 was designed for occasional usage (transfer and quit)
- passwords are never really stored, just a non-reversible hash is
- more flexible permissions
But you may still want to stay with HFS 2.x (so far) for the following reasons
- smaller
- more tested
- classic window interface (can be easier for some people)