Update README.md

This commit is contained in:
Graham Steffaniak 2023-08-02 08:49:50 -05:00 committed by GitHub
parent 87456c8b95
commit aa691499a2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 42 additions and 6 deletions

View File

@ -15,13 +15,17 @@ This fork makes the following significant changes to filebrowser for origin:
1. [x] Improved and simplified GUI 1. [x] Improved and simplified GUI
- Moved all action buttons to file action bar except for switch-view - Moved all action buttons to file action bar except for switch-view
- Simplified navbar to 3 main actions: settings,search, and switch-view - Simplified navbar to 3 main actions: settings,search, and switch-view
- New search view on desktop
1. [x] Updated version and dependencies 1. [x] Updated version and dependencies
- [x] Uses latest npm and node version - [x] Uses latest npm and node version
- [x] Removes deprecated npm packages - [x] Removes deprecated npm packages
- [x] Updates golang dependencies - [x] Updates golang dependencies
- [ ] Remove all unnecessary packages, replaces with generic functions.
1. [ ] Moved all configurations to filebrowser.json. 1. [ ] Moved all configurations to filebrowser.json.
no more flags or binary operations to db no more flags or binary operations to db
1. [ ] File browsing uses index first for better performance
- file details shown only when toggled or needed
## About ## About
Filebrowser provides a file managing interface within a specified directory Filebrowser provides a file managing interface within a specified directory
@ -29,9 +33,18 @@ and it 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 own It allows the creation of multiple users and each user can have its own
directory. It can be used as a standalone app. directory. It can be used as a standalone app.
This repository is a fork, a collection of changes that make this program
work better in terms of asthetics and performance. Improved search,
simplified ui (without removing features) and more secure and up-to-date
build are just a few examples.
There are a few more changes needed to get it to a stable status where it
will only recieve security updates. These changes are mentioned above.
Once this is fully complete, the only updates to th
## Look ## Look
This is how desktop search looks in 0.1.3, the styling will be further refined in the next version" This is how desktop search looks in 0.1.3, the styling will be further refined in the next version.
![image](https://github.com/gtsteffaniak/filebrowser/assets/42989099/761f2a08-cafb-4f79-90fe-48fa50679f48) ![image](https://github.com/gtsteffaniak/filebrowser/assets/42989099/761f2a08-cafb-4f79-90fe-48fa50679f48)
However mobile search still appears very similar to filebrowser/filebrowsers original implementation: However mobile search still appears very similar to filebrowser/filebrowsers original implementation:
@ -41,6 +54,27 @@ search categories are improved:
![image](https://github.com/gtsteffaniak/filebrowser/assets/42989099/5572ef20-3047-43b9-92f8-95c4ce6f12b5) ![image](https://github.com/gtsteffaniak/filebrowser/assets/42989099/5572ef20-3047-43b9-92f8-95c4ce6f12b5)
## Performance
Search Performance - 100x faster search. However, this will be at expense of RAM. if you have < 1 million
files and folders in the given scope, the RAM usage should be less than 200MB total. RAM requirements
should scale based on the number of directories.
Also , the approx. time to fully index will vary widely based on performance. A sufficiently performant
system should fully index within the first 5 minutes, potentially within the first few seconds.
For example, a low end 11th gen i5 with SSD indexes 86K files within 1 second:
```
2023/08/01 00:08:29 Using config file: /.filebrowser.json
2023/08/01 00:08:29 Indexing files...
2023/08/01 00:08:29 Listening on [::]:8080
2023/08/01 00:08:30 Successfully indexed files.
2023/08/01 00:08:30 Files found : 85310
2023/08/01 00:08:30 Directories found : 1711
2023/08/01 00:08:30 Indexing scheduler will run every 5 minutes
```
## Install ## Install
Using docker: Using docker:
@ -48,7 +82,7 @@ Using docker:
1. docker run: 1. docker run:
``` ```
docker run -it -v /path/to/folder:/srv -p 8080:80 gtstef/filebrowser:0.1.3 docker run -it -v /path/to/folder:/srv -p 8080:8080 gtstef/filebrowser
``` ```
1. docker-compose: 1. docker-compose:
@ -64,8 +98,8 @@ services:
#- './database/:/database/' #- './database/:/database/'
- './config.json:/.filebrowser.json' - './config.json:/.filebrowser.json'
ports: ports:
- '8080:80' - '8080:8080'
image: gtstef/filebrowser:0.1.3 image: gtstef/filebrowser
``` ```
- with network share - with network share
@ -80,7 +114,7 @@ services:
#- './config.json:/.filebrowser.json' #- './config.json:/.filebrowser.json'
ports: ports:
- '8080:80' - '8080:80'
image: gtstef/filebrowser:0.1.3 image: gtstef/filebrowser
volumes: volumes:
nas: nas:
driver_opts: driver_opts:
@ -91,6 +125,8 @@ volumes:
## Configuration ## Configuration
Note: still a WIP migrating configuration to json.
All configuration is now done via the filebrowser.json config file. All configuration is now done via the filebrowser.json config file.
This was chosen because it works best with a docker first use case. This was chosen because it works best with a docker first use case.