2023-09-15 22:14:18 +00:00
|
|
|
<p align="center">
|
|
|
|
<a href="https://opensource.org/license/apache-2-0/"><img src="https://img.shields.io/badge/License-Apache_2.0-blue.svg" alt="License: Apache-2.0"></a>
|
2023-09-06 21:07:35 +00:00
|
|
|
</p>
|
|
|
|
<p align="center">
|
2024-08-03 15:34:12 +00:00
|
|
|
<img src="frontend/public/img/icons/favicon-256x256.png" width="100" title="Login With Custom URL">
|
2023-09-06 21:07:35 +00:00
|
|
|
</p>
|
2024-09-16 21:01:16 +00:00
|
|
|
<h3 align="center">FileBrowser Quantum - A modern web-based file manager</h3>
|
2023-09-06 21:07:35 +00:00
|
|
|
<p align="center">
|
2024-08-04 14:56:18 +00:00
|
|
|
<img width="800" src="https://github.com/user-attachments/assets/8ba93582-aba2-4996-8ac3-25f763a2e596" title="Main Screenshot">
|
2023-09-06 21:07:35 +00:00
|
|
|
</p>
|
2018-06-26 10:10:12 +00:00
|
|
|
|
2023-12-01 23:47:00 +00:00
|
|
|
> [!WARNING]
|
2024-08-03 15:34:12 +00:00
|
|
|
> Starting with v0.2.0, *ALL* configuration is done via `filebrowser.yaml`
|
2024-08-04 14:56:18 +00:00
|
|
|
> Configuration file.
|
2024-08-03 15:34:12 +00:00
|
|
|
> Starting with v0.2.4 *ALL* share links need to be re-created (due to
|
|
|
|
> security fix).
|
2018-04-23 21:42:52 +00:00
|
|
|
|
2024-09-16 21:01:16 +00:00
|
|
|
FileBrowser Quantum is a fork of the filebrowser opensource project with the
|
2024-08-24 22:02:33 +00:00
|
|
|
following changes:
|
2023-06-13 13:22:24 +00:00
|
|
|
|
2024-08-24 22:02:33 +00:00
|
|
|
1. [x] Enhanced lightning fast indexed search
|
|
|
|
- Real-time results as you type
|
2024-07-30 17:45:27 +00:00
|
|
|
- Works with more type filters
|
2024-08-24 22:02:33 +00:00
|
|
|
- Enhanced interactive results page.
|
2024-07-30 17:45:27 +00:00
|
|
|
2. [x] Revamped and simplified GUI navbar and sidebar menu.
|
2024-08-03 15:34:12 +00:00
|
|
|
- Additional compact view mode as well as refreshed view mode
|
|
|
|
styles.
|
2024-08-24 22:02:33 +00:00
|
|
|
3. [x] Revamped and simplified configuration via `filebrowser.yml` config file.
|
|
|
|
4. [x] Faster listing browsing
|
|
|
|
- Switching view modes is instant
|
|
|
|
- Changing Sort order is instant
|
|
|
|
- The entire directory is loaded in 1/3 the time
|
2024-02-10 00:13:02 +00:00
|
|
|
|
2023-06-13 13:15:11 +00:00
|
|
|
## About
|
2018-04-23 21:42:52 +00:00
|
|
|
|
2024-09-16 21:01:16 +00:00
|
|
|
FileBrowser Quantum provides a file managing interface within a specified directory
|
2024-08-04 14:56:18 +00:00
|
|
|
and can be used to upload, delete, preview, rename, and edit your files.
|
|
|
|
It allows the creation of multiple users and each user can have its
|
2024-07-30 17:45:27 +00:00
|
|
|
directory.
|
2018-04-23 21:42:52 +00:00
|
|
|
|
2024-08-24 22:02:33 +00:00
|
|
|
This repository is a fork of the original [filebrowser](https://github.com/filebrowser/filebrowser)
|
|
|
|
with a collection of changes that make this program work better in terms of
|
|
|
|
aesthetics and performance. Improved search, simplified ui
|
|
|
|
(without removing features) and more secure and up-to-date
|
2024-07-30 17:45:27 +00:00
|
|
|
build are just a few examples.
|
|
|
|
|
2024-09-16 21:01:16 +00:00
|
|
|
FileBrowser Quantum differs significantly to the original.
|
2024-08-04 14:56:18 +00:00
|
|
|
There are hundreds of thousands of lines changed and they are generally
|
|
|
|
no longer compatible with each other. This has been intentional -- the
|
2024-07-30 17:45:27 +00:00
|
|
|
focus of this fork is on a few key principles:
|
|
|
|
- Simplicity and improved user experience
|
2024-08-24 22:02:33 +00:00
|
|
|
- Improving performance and faster feedback when making changes.
|
2024-08-04 14:56:18 +00:00
|
|
|
- Minimize external dependencies and standard library usage.
|
|
|
|
- Of course -- adding much-needed features.
|
2023-08-02 13:49:50 +00:00
|
|
|
|
2023-08-02 13:31:04 +00:00
|
|
|
## Look
|
2024-07-30 17:45:27 +00:00
|
|
|
|
2024-08-03 15:34:12 +00:00
|
|
|
One way you can observe the improved user experience is how I changed
|
2024-08-04 14:56:18 +00:00
|
|
|
the UI. The Navbar is simplified to a three-component system :
|
2024-07-30 17:45:27 +00:00
|
|
|
|
|
|
|
1. (Left) The slide-out action panel button
|
|
|
|
2. (Middle) The powerful search bar.
|
|
|
|
3. (Right) The view change toggle.
|
2024-08-03 15:34:12 +00:00
|
|
|
|
|
|
|
All other functions are moved either into the action menu or popup menus.
|
2024-08-04 14:56:18 +00:00
|
|
|
If the action does not depend on context, it will exist in the slide-out
|
|
|
|
action panel. If the action is available based on context, it will show up as
|
2024-08-03 15:34:12 +00:00
|
|
|
a popup menu.
|
2024-07-30 17:45:27 +00:00
|
|
|
|
2023-09-06 21:07:35 +00:00
|
|
|
<p align="center">
|
2024-08-04 14:56:18 +00:00
|
|
|
<img width="800" src="https://github.com/gtsteffaniak/filebrowser/assets/42989099/899152cf-3e69-4179-aa82-752af2df3fc6" title="Main Screenshot">
|
|
|
|
<img width="800" src="https://github.com/user-attachments/assets/18c02d03-5c60-4e15-9c32-3cfe058a0c49" title="Main Screenshot">
|
|
|
|
<img width="800" src="https://github.com/user-attachments/assets/75226dc4-9802-46f0-9e3c-e4403d3275da" title="Main Screenshot">
|
|
|
|
|
2023-09-06 21:07:35 +00:00
|
|
|
</p>
|
2023-08-02 13:31:04 +00:00
|
|
|
|
2023-06-13 13:15:11 +00:00
|
|
|
## Install
|
2018-04-23 21:42:52 +00:00
|
|
|
|
2023-06-13 13:15:11 +00:00
|
|
|
Using docker:
|
2018-04-23 21:42:52 +00:00
|
|
|
|
2023-09-09 21:59:43 +00:00
|
|
|
1. docker run (no persistent db):
|
2018-04-23 21:42:52 +00:00
|
|
|
|
2023-06-13 13:15:11 +00:00
|
|
|
```
|
2024-02-10 00:13:02 +00:00
|
|
|
docker run -it -v /path/to/folder:/srv -p 80:80 gtstef/filebrowser
|
2023-06-13 13:15:11 +00:00
|
|
|
```
|
2018-04-23 21:42:52 +00:00
|
|
|
|
2024-08-24 22:02:33 +00:00
|
|
|
1. docker compose:
|
2023-06-13 13:15:11 +00:00
|
|
|
|
|
|
|
- with local storage
|
2018-04-23 21:42:52 +00:00
|
|
|
|
2023-06-13 13:15:11 +00:00
|
|
|
```
|
|
|
|
version: '3.7'
|
|
|
|
services:
|
|
|
|
filebrowser:
|
|
|
|
volumes:
|
2023-09-09 21:59:43 +00:00
|
|
|
- '/path/to/folder:/srv' # required (for now not configurable)
|
|
|
|
- './database:/database' # optional if you want db to persist - configure a path under "database" dir in config file.
|
|
|
|
- './filebrowser.yaml:/filebrowser.yaml' # required
|
2023-06-13 13:15:11 +00:00
|
|
|
ports:
|
2024-02-10 00:13:02 +00:00
|
|
|
- '80:80'
|
2023-08-02 13:49:50 +00:00
|
|
|
image: gtstef/filebrowser
|
2023-09-09 21:59:43 +00:00
|
|
|
restart: always
|
2023-06-13 13:15:11 +00:00
|
|
|
```
|
2020-06-18 15:54:37 +00:00
|
|
|
|
2023-06-13 13:15:11 +00:00
|
|
|
- with network share
|
2020-06-18 15:54:37 +00:00
|
|
|
|
2023-06-13 13:15:11 +00:00
|
|
|
```
|
|
|
|
version: '3.7'
|
|
|
|
services:
|
|
|
|
filebrowser:
|
|
|
|
volumes:
|
2023-09-09 21:59:43 +00:00
|
|
|
- 'storage:/srv' # required (for now not configurable)
|
|
|
|
- './database:/database' # optional if you want db to persist - configure a path under "database" dir in config file.
|
|
|
|
- './filebrowser.yaml:/filebrowser.yaml' # required
|
2023-06-13 13:15:11 +00:00
|
|
|
ports:
|
2024-02-10 00:13:02 +00:00
|
|
|
- '80:80'
|
2023-08-02 13:49:50 +00:00
|
|
|
image: gtstef/filebrowser
|
2023-09-09 21:59:43 +00:00
|
|
|
restart: always
|
2023-06-13 13:15:11 +00:00
|
|
|
volumes:
|
2023-09-09 21:59:43 +00:00
|
|
|
storage:
|
2023-06-13 13:15:11 +00:00
|
|
|
driver_opts:
|
|
|
|
type: cifs
|
2023-09-09 21:59:43 +00:00
|
|
|
o: "username=admin,password=password,rw" # enter valid info here
|
|
|
|
device: "//192.168.1.100/share/" # enter valid hinfo here
|
|
|
|
|
2023-06-13 13:15:11 +00:00
|
|
|
```
|
2018-04-23 21:42:52 +00:00
|
|
|
|
2024-08-04 17:50:35 +00:00
|
|
|
Not using docker (not recommended), download your binary from releases and run with your custom config file:
|
2024-02-10 00:13:02 +00:00
|
|
|
|
|
|
|
```
|
2024-08-03 15:34:12 +00:00
|
|
|
./filebrowser -c <filebrowser.yml or other /path/to/config.yaml>
|
2024-02-10 00:13:02 +00:00
|
|
|
```
|
|
|
|
|
2023-06-13 13:15:11 +00:00
|
|
|
## Configuration
|
2018-04-23 21:42:52 +00:00
|
|
|
|
2024-08-03 15:34:12 +00:00
|
|
|
All configuration is now done via a single configuration file:
|
2024-08-04 14:56:18 +00:00
|
|
|
`filebrowser.yaml`, here is an example of minimal [configuration
|
2024-08-03 15:34:12 +00:00
|
|
|
file](./backend/filebrowser.yaml).
|
2023-09-09 21:59:43 +00:00
|
|
|
|
2024-08-03 15:34:12 +00:00
|
|
|
View the [Configuration Help Page](./configuration.md) for available
|
|
|
|
configuration options and other help.
|
2023-09-09 21:59:43 +00:00
|
|
|
|
2024-02-10 00:13:02 +00:00
|
|
|
|
|
|
|
## Migration from filebrowser/filebrowser
|
|
|
|
|
2024-08-24 22:02:33 +00:00
|
|
|
If you currently use the original opensource filebrowser
|
|
|
|
but want to try using this. I recommend you start fresh without
|
2024-08-03 15:34:12 +00:00
|
|
|
reusing the database, but there are a few things you'll need to do if you
|
|
|
|
must migrate:
|
2024-02-10 00:13:02 +00:00
|
|
|
|
|
|
|
1. Create a configuration file as mentioned above.
|
2024-08-03 15:34:12 +00:00
|
|
|
2. Copy your database file from the original filebrowser to the path of
|
|
|
|
the new one.
|
|
|
|
3. Update the configuration file to use the database (under server in
|
|
|
|
filebrowser.yml)
|
|
|
|
4. If you are using docker, update the docker-compose file or docker run
|
|
|
|
command to use the config file as described in the install section
|
|
|
|
above.
|
|
|
|
5. If you are not using docker, just make sure you run filebrowser -c
|
2024-08-04 14:56:18 +00:00
|
|
|
filebrowser.yml and have a valid filebrowser config.
|
2024-02-10 00:13:02 +00:00
|
|
|
|
|
|
|
|
2024-08-24 22:02:33 +00:00
|
|
|
The filebrowser Quantum application should run with the same user and rules that
|
2024-08-03 15:34:12 +00:00
|
|
|
you have from the original. But keep in mind the differences that are
|
|
|
|
mentioned at the top of this readme.
|
2024-02-10 00:13:02 +00:00
|
|
|
|
2024-08-24 22:02:33 +00:00
|
|
|
|
|
|
|
## Comparison Chart
|
|
|
|
|
|
|
|
Application Name | <img width="48" src="frontend/public/img/icons/favicon-256x256.png" > Quantum | <img width="48" src="https://github.com/filebrowser/filebrowser/blob/master/frontend/public/img/logo.svg" > Filebrowser | <img width="48" src="https://github.com/mickael-kerjean/filestash/blob/master/public/assets/logo/app_icon.png?raw=true" > Filestash | <img width="48" src="https://avatars.githubusercontent.com/u/19211038?s=200&v=4" > Nextcloud | <img width="48" src="https://upload.wikimedia.org/wikipedia/commons/thumb/d/da/Google_Drive_logo.png/480px-Google_Drive_logo.png" > Google_Drive | <img width="48" src="https://avatars.githubusercontent.com/u/6422152?v=4" > FileRun
|
|
|
|
--- | --- | --- | --- | --- | --- | --- |
|
|
|
|
Filesystem support | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
|
|
|
|
Linux | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
|
|
|
|
Windows | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
|
|
|
|
Mac | ✅ | ✅ | ✅ | ❌ | ❌ | ❌ |
|
|
|
|
Self hostable | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
|
|
|
|
Has Stable Release? | ❌ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
|
|
S3 support | ❌ | ❌ | ✅ | ✅ | ❌ | ✅ |
|
|
|
|
webdav support | ❌ | ❌ | ✅ | ✅ | ❌ | ✅ |
|
|
|
|
ftp support | ❌ | ❌ | ✅ | ✅ | ❌ | ✅ |
|
|
|
|
Dedicated docs site? | ❌ | ✅ | ✅ | ✅ | ❌ | ✅ |
|
|
|
|
Multiple sources at once | ❌ | ❌ | ✅ | ✅ | ❌ | ✅ |
|
|
|
|
Docker image size | 22 MB | 31 MB | 240 MB (main image) | 250 MB | ❌ | > 2 GB |
|
|
|
|
Min. Memory Requirements | 128 MB | 128 MB | 128 MB (main image) | 128 MB | ❌ | 4 GB |
|
|
|
|
has standalone binary | ✅ | ✅ | ❌ | ❌ | ❌ | ❌ |
|
|
|
|
price | free | free | free | free tier | free tier | $99+ |
|
|
|
|
rich media preview | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
|
|
upload files from the web? | ✅ | ✅ | ✅ | ✅ | ✅ | ❌ |
|
|
|
|
Advanced Search? | ✅ | ❌ | ❌ | configurable | ✅ | ✅ |
|
|
|
|
Indexed Search? | ✅ | ❌ | ❌ | configurable | ✅ | ✅ |
|
|
|
|
Content-aware search? | ❌ | ❌ | ❌ | configurable | ✅ | ✅ |
|
|
|
|
Custom job support | ❌ | ✅ | ❌ | ✅ | ❌ | ✅ |
|
|
|
|
Multiple users | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
|
|
Single sign-on support | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
|
|
|
|
LDAP sign-on support | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
|
|
|
|
2FA sign-on support | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
|
|
|
|
Long-live API key support | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
|
|
|
|
Mobile App | ❌ | ❌ | ❌ | ❌ | ✅ | ❌ |
|
|
|
|
open source? | ✅ | ✅ | ✅ | ✅ | ❌ | ✅ |
|
|
|
|
tags support | ❌ | ❌ | ❌ | ✅ | ❌ | ✅ |
|
|
|
|
sharable web links? | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
|
|
Event-based notifications | ❌ | ❌ | ❌ | ❌ | ❌ | ✅ |
|
|
|
|
Metrics | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ |
|
|
|
|
file space quotas | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
|
|
|
|
text-based files editor | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
|
|
|
|
office file support | ❌ | ❌ | ✅ | ✅ | ✅ | ✅ |
|
|
|
|
Themes | ✅ | ✅ | ❌ | ❌ | ❌ | ✅ |
|
|
|
|
Branding support | ❌ | ✅ | ❌ | ❌ | ❌ | ✅ |
|
|
|
|
activity log | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
|
|
|
|
Comments support | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
|
|
|
|
collaboration on same file | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
|
|
|
|
trash support | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ |
|
|
|
|
Starred/pinned files | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ |
|
|
|
|
Content preview icons | ✅ | ✅ | ❌ | ❌ | ✅ | ✅ |
|
|
|
|
Plugins support | ❌ | ❌ | ✅ | ✅ | ❌ | ✅ |
|
|
|
|
Chromecast support | ❌ | ❌ | ✅ | ❌ | ❌ | ❌ |
|
|
|
|
|
2023-09-10 14:08:21 +00:00
|
|
|
## Roadmap
|
|
|
|
|
|
|
|
see [Roadmap Page](./roadmap.md)
|