winget install --id=rejetto.hfs -e
HFS is a web file server to run on your computer. Share folders or even a single file thanks to the virtual file system.
Access via web your files directly from your disk.
This is a full rewrite of the Delphi version.
If you need Docker installation or Service installation, click the links.
Minimum Windows version required is 10 or Server 2019. If you have a previous version, you can still follow instructions for Other systems
Assets
hfs
file.
control
key while clicking, then click open
.localhost
address, so you can configure the rest in the Admin-panel.Got problems?
if a browser cannot be opened on the computer where you are installing HFS,
you should enter this command in the HFS console: create-admin
if you cannot access the console (like when you are running as a service), you can edit the config file to add your admin account
if you don't want to use an editor you can create the file with this command:
echo "create-admin: PASSWORD" > config.yaml
If you access Admin-panel via localhost, by default HFS won't require you to login.
If you don't like this behavior, disable it in the Admin-panel or enter this console command config localhost_admin false
.
If can't or don't want to run our binary versions, you can try this:
npx hfs@latest
The @latest
part is optional, and ensures that you are always up to date.
If this procedure fails, it may be that you are missing one of these requirements.
Configuration and other files will be stored in %HOME%/.vfs
If you have full access to HFS' console, you can enter commands. Start with help
to have a full list.
For configuration please see file config.md.
Configuration is stored in the file config.yaml
, exception made for custom HTML which is stored in custom.html
.
These files are kept in the Current Working Directory (cwd), which is by default the same folder of hfs.exe
if you are using this kind of distribution on Windows, or USER_FOLDER/.hfs
on other systems.
You can decide a different folder passing --cwd SOME_FOLDER
parameter at command line.
Any relative path provided is relative to the cwd.
It is possible to show the Front-end in other languages. Translation for some languages is already provided. If you find an error, consider reporting it or editing the source file.
In the Languages section of the Admin-panel you can install additional language files.
If your language is missing, please consider translating yourself.
#LOGIN
to address will bring up the login dialog?login=USER:PASSWORD
will automatically log in the browser?overwrite
on uploads, will override the dont_overwrite_uploading configuration, provided you also have delete permission?search=PATTERN
will trigger search at start?onlyFiles
or ?onlyFolders
will limit type of results?autoplay=shuffle
will trigger show & play; ?autoplay
will not shuffle, but also will not start until the list is complete--consoleFile PATH
will output all stdout and stderr also to a fileDISABLE_UPDATE=1
(for containers)There are several ways to contribute
It's very important to report bugs, and if you are not so sure about it, don't worry, we'll discuss it. If you find important security problems, please contact us privately so that we can publish a fix before the problem is disclosed, for the safety of other users.
Use beta versions, and give feedback.
While betas have more problems, you'll get more features and give a huge help to the project.
While the project should not become too complex, yours may be an idea for a plugin.
Write guides or make videos for other users. We got a wiki!
Submit your code
If you'd like to make a change yourself in the code, please first open an "issue" or "discussion" about it, so we'll try to cooperate and understand what's the best path for it.
A plugin can change the look (a theme), and/or introduce a new functionality.
Flag images are public-domain, downloaded from https://flagpedia.net