diff --git a/Dockerfile b/Dockerfile
index 6162e84c..81452858 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -6,8 +6,7 @@ RUN npm run build
FROM golang:alpine as base
WORKDIR /app
-COPY ./src/ ./
-COPY --from=nbuild /app/dist ./frontend/dist
+COPY ./src/backend ./
RUN go build -o filebrowser .
FROM alpine:latest
@@ -24,4 +23,6 @@ EXPOSE 80
COPY --from=base /app/docker_config.json /.filebrowser.json
COPY --from=base /app/filebrowser /filebrowser
+COPY --from=nbuild /app/dist/ ./frontend/dist/
+
ENTRYPOINT [ "/filebrowser" ]
\ No newline at end of file
diff --git a/README.md b/README.md
index 7e39024d..6160f791 100644
--- a/README.md
+++ b/README.md
@@ -1,33 +1,70 @@
-
-
-
+## gtstef fork of filebrowser
-
+Intended for docker use only, makes the following significant changes to filebrowser;
-[](https://github.com/filebrowser/filebrowser/actions/workflows/main.yaml)
-[](https://goreportcard.com/report/github.com/filebrowser/filebrowser)
-[](http://godoc.org/github.com/filebrowser/filebrowser)
-[](https://github.com/filebrowser/filebrowser/releases/latest)
-[](http://webchat.freenode.net/?channels=%23filebrowser)
+ 1. Improves search to use index instead of filesystem search.
+ - lightning fast
+ - realtime results as you type
+ 1. Preview enhancments
+ - preview default view is constrained to files subwindow, which can be toggled to fullscreen.
+ 1. Updated node version and dependancies
+ - uses latest npm and node version
+ - removes deprecated npm packages
+ 1. Improved routing
+ - fixed bugs in original version
+ 1. Added authentication type
+ - Using bearer token with remote authentication server
+
+## About
filebrowser provides a file managing interface within a specified directory 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 directory. It can be used as a standalone app.
-## Features
-
-Please refer to our docs at [https://filebrowser.org/features](https://filebrowser.org/features)
-
## Install
-For installation instructions please refer to our docs at [https://filebrowser.org/installation](https://filebrowser.org/installation).
+Using docker:
+
+1. docker run:
+
+```
+```
+
+1. docker-compose:
+
+ - with local storage
+
+```
+version: '3.7'
+services:
+ filebrowser:
+ volumes:
+ - '/path/to/folder:/srv'
+ #- './database/:/database/'
+ #- './config.json:/.filebrowser.json'
+ ports:
+ - '8080:80'
+ image: gtstef/filebrowser:0.1.0
+```
+
+ - with network share
+
+```
+version: '3.7'
+services:
+ filebrowser:
+ volumes:
+ - 'nas:/srv'
+ #- './database/:/database/'
+ #- './config.json:/.filebrowser.json'
+ ports:
+ - '8080:80'
+ image: gtstef/filebrowser:0.1.0
+volumes:
+ nas:
+ driver_opts:
+ type: cifs
+ o: "username=myusername,password=mypassword,rw"
+ device: "//fileshare/"
+```
## Configuration
-[Authentication Method](https://filebrowser.org/configuration/authentication-method) - You can change the way the user authenticates with the filebrowser server
-
-[Command Runner](https://filebrowser.org/configuration/command-runner) - The command runner is a feature that enables you to execute any shell command you want before or after a certain event.
-
-[Custom Branding](https://filebrowser.org/configuration/custom-branding) - You can customize your File Browser installation by change its name to any other you want, by adding a global custom style sheet and by using your own logotype if you want.
-
-## Contributing
-
-If you're interested in contributing to this project, our docs are best places to start [https://filebrowser.org/contributing](https://filebrowser.org/contributing).
diff --git a/src/auth/auth.go b/src/backend/auth/auth.go
similarity index 100%
rename from src/auth/auth.go
rename to src/backend/auth/auth.go
diff --git a/src/auth/hook.go b/src/backend/auth/hook.go
similarity index 100%
rename from src/auth/hook.go
rename to src/backend/auth/hook.go
diff --git a/src/auth/json.go b/src/backend/auth/json.go
similarity index 100%
rename from src/auth/json.go
rename to src/backend/auth/json.go
diff --git a/src/auth/none.go b/src/backend/auth/none.go
similarity index 100%
rename from src/auth/none.go
rename to src/backend/auth/none.go
diff --git a/src/auth/proxy.go b/src/backend/auth/proxy.go
similarity index 100%
rename from src/auth/proxy.go
rename to src/backend/auth/proxy.go
diff --git a/src/auth/storage.go b/src/backend/auth/storage.go
similarity index 100%
rename from src/auth/storage.go
rename to src/backend/auth/storage.go
diff --git a/src/cmd/cmd.go b/src/backend/cmd/cmd.go
similarity index 100%
rename from src/cmd/cmd.go
rename to src/backend/cmd/cmd.go
diff --git a/src/cmd/cmds.go b/src/backend/cmd/cmds.go
similarity index 100%
rename from src/cmd/cmds.go
rename to src/backend/cmd/cmds.go
diff --git a/src/cmd/cmds_add.go b/src/backend/cmd/cmds_add.go
similarity index 100%
rename from src/cmd/cmds_add.go
rename to src/backend/cmd/cmds_add.go
diff --git a/src/cmd/cmds_ls.go b/src/backend/cmd/cmds_ls.go
similarity index 100%
rename from src/cmd/cmds_ls.go
rename to src/backend/cmd/cmds_ls.go
diff --git a/src/cmd/cmds_rm.go b/src/backend/cmd/cmds_rm.go
similarity index 100%
rename from src/cmd/cmds_rm.go
rename to src/backend/cmd/cmds_rm.go
diff --git a/src/cmd/config.go b/src/backend/cmd/config.go
similarity index 100%
rename from src/cmd/config.go
rename to src/backend/cmd/config.go
diff --git a/src/cmd/config_cat.go b/src/backend/cmd/config_cat.go
similarity index 100%
rename from src/cmd/config_cat.go
rename to src/backend/cmd/config_cat.go
diff --git a/src/cmd/config_export.go b/src/backend/cmd/config_export.go
similarity index 100%
rename from src/cmd/config_export.go
rename to src/backend/cmd/config_export.go
diff --git a/src/cmd/config_import.go b/src/backend/cmd/config_import.go
similarity index 100%
rename from src/cmd/config_import.go
rename to src/backend/cmd/config_import.go
diff --git a/src/cmd/config_init.go b/src/backend/cmd/config_init.go
similarity index 100%
rename from src/cmd/config_init.go
rename to src/backend/cmd/config_init.go
diff --git a/src/cmd/config_set.go b/src/backend/cmd/config_set.go
similarity index 100%
rename from src/cmd/config_set.go
rename to src/backend/cmd/config_set.go
diff --git a/src/cmd/docs.go b/src/backend/cmd/docs.go
similarity index 100%
rename from src/cmd/docs.go
rename to src/backend/cmd/docs.go
diff --git a/src/cmd/hash.go b/src/backend/cmd/hash.go
similarity index 100%
rename from src/cmd/hash.go
rename to src/backend/cmd/hash.go
diff --git a/src/cmd/root.go b/src/backend/cmd/root.go
similarity index 98%
rename from src/cmd/root.go
rename to src/backend/cmd/root.go
index 4674d168..9a175b17 100644
--- a/src/cmd/root.go
+++ b/src/backend/cmd/root.go
@@ -23,7 +23,6 @@ import (
"github.com/filebrowser/filebrowser/v2/auth"
"github.com/filebrowser/filebrowser/v2/diskcache"
- "github.com/filebrowser/filebrowser/v2/frontend"
fbhttp "github.com/filebrowser/filebrowser/v2/http"
"github.com/filebrowser/filebrowser/v2/img"
"github.com/filebrowser/filebrowser/v2/settings"
@@ -35,6 +34,14 @@ var (
cfgFile string
)
+type dirFS struct {
+ http.Dir
+}
+
+func (d dirFS) Open(name string) (fs.File, error) {
+ return d.Dir.Open(name)
+}
+
func init() {
cobra.OnInitialize(initConfig)
cobra.MousetrapHelpText = ""
@@ -170,11 +177,7 @@ user created with the credentials from options "username" and "password".`,
signal.Notify(sigc, os.Interrupt, syscall.SIGTERM)
go cleanupHandler(listener, sigc)
- assetsFs, err := fs.Sub(frontend.Assets(), "dist")
- if err != nil {
- panic(err)
- }
-
+ assetsFs := dirFS{Dir: http.Dir("frontend/dist")}
handler, err := fbhttp.NewHandler(imgSvc, fileCache, d.store, server, assetsFs)
checkErr(err)
diff --git a/src/cmd/rule_rm.go b/src/backend/cmd/rule_rm.go
similarity index 100%
rename from src/cmd/rule_rm.go
rename to src/backend/cmd/rule_rm.go
diff --git a/src/cmd/rules.go b/src/backend/cmd/rules.go
similarity index 100%
rename from src/cmd/rules.go
rename to src/backend/cmd/rules.go
diff --git a/src/cmd/rules_add.go b/src/backend/cmd/rules_add.go
similarity index 100%
rename from src/cmd/rules_add.go
rename to src/backend/cmd/rules_add.go
diff --git a/src/cmd/rules_ls.go b/src/backend/cmd/rules_ls.go
similarity index 100%
rename from src/cmd/rules_ls.go
rename to src/backend/cmd/rules_ls.go
diff --git a/src/cmd/upgrade.go b/src/backend/cmd/upgrade.go
similarity index 100%
rename from src/cmd/upgrade.go
rename to src/backend/cmd/upgrade.go
diff --git a/src/cmd/users.go b/src/backend/cmd/users.go
similarity index 100%
rename from src/cmd/users.go
rename to src/backend/cmd/users.go
diff --git a/src/cmd/users_add.go b/src/backend/cmd/users_add.go
similarity index 100%
rename from src/cmd/users_add.go
rename to src/backend/cmd/users_add.go
diff --git a/src/cmd/users_export.go b/src/backend/cmd/users_export.go
similarity index 100%
rename from src/cmd/users_export.go
rename to src/backend/cmd/users_export.go
diff --git a/src/cmd/users_find.go b/src/backend/cmd/users_find.go
similarity index 100%
rename from src/cmd/users_find.go
rename to src/backend/cmd/users_find.go
diff --git a/src/cmd/users_import.go b/src/backend/cmd/users_import.go
similarity index 100%
rename from src/cmd/users_import.go
rename to src/backend/cmd/users_import.go
diff --git a/src/cmd/users_rm.go b/src/backend/cmd/users_rm.go
similarity index 100%
rename from src/cmd/users_rm.go
rename to src/backend/cmd/users_rm.go
diff --git a/src/cmd/users_update.go b/src/backend/cmd/users_update.go
similarity index 100%
rename from src/cmd/users_update.go
rename to src/backend/cmd/users_update.go
diff --git a/src/cmd/utils.go b/src/backend/cmd/utils.go
similarity index 100%
rename from src/cmd/utils.go
rename to src/backend/cmd/utils.go
diff --git a/src/cmd/version.go b/src/backend/cmd/version.go
similarity index 100%
rename from src/cmd/version.go
rename to src/backend/cmd/version.go
diff --git a/src/diskcache/cache.go b/src/backend/diskcache/cache.go
similarity index 100%
rename from src/diskcache/cache.go
rename to src/backend/diskcache/cache.go
diff --git a/src/diskcache/file_cache.go b/src/backend/diskcache/file_cache.go
similarity index 100%
rename from src/diskcache/file_cache.go
rename to src/backend/diskcache/file_cache.go
diff --git a/src/diskcache/file_cache_test.go b/src/backend/diskcache/file_cache_test.go
similarity index 100%
rename from src/diskcache/file_cache_test.go
rename to src/backend/diskcache/file_cache_test.go
diff --git a/src/diskcache/noop_cache.go b/src/backend/diskcache/noop_cache.go
similarity index 100%
rename from src/diskcache/noop_cache.go
rename to src/backend/diskcache/noop_cache.go
diff --git a/src/docker/root/defaults/settings.json b/src/backend/docker/root/defaults/settings.json
similarity index 100%
rename from src/docker/root/defaults/settings.json
rename to src/backend/docker/root/defaults/settings.json
diff --git a/src/docker/root/etc/cont-init.d/20-config b/src/backend/docker/root/etc/cont-init.d/20-config
similarity index 100%
rename from src/docker/root/etc/cont-init.d/20-config
rename to src/backend/docker/root/etc/cont-init.d/20-config
diff --git a/src/docker/root/etc/services.d/filebrowser/run b/src/backend/docker/root/etc/services.d/filebrowser/run
similarity index 100%
rename from src/docker/root/etc/services.d/filebrowser/run
rename to src/backend/docker/root/etc/services.d/filebrowser/run
diff --git a/src/docker_config.json b/src/backend/docker_config.json
similarity index 100%
rename from src/docker_config.json
rename to src/backend/docker_config.json
diff --git a/src/errors/errors.go b/src/backend/errors/errors.go
similarity index 100%
rename from src/errors/errors.go
rename to src/backend/errors/errors.go
diff --git a/src/files/file.go b/src/backend/files/file.go
similarity index 100%
rename from src/files/file.go
rename to src/backend/files/file.go
diff --git a/src/files/listing.go b/src/backend/files/listing.go
similarity index 100%
rename from src/files/listing.go
rename to src/backend/files/listing.go
diff --git a/src/files/sorting.go b/src/backend/files/sorting.go
similarity index 100%
rename from src/files/sorting.go
rename to src/backend/files/sorting.go
diff --git a/src/files/utils.go b/src/backend/files/utils.go
similarity index 100%
rename from src/files/utils.go
rename to src/backend/files/utils.go
diff --git a/src/fileutils/copy.go b/src/backend/fileutils/copy.go
similarity index 100%
rename from src/fileutils/copy.go
rename to src/backend/fileutils/copy.go
diff --git a/src/fileutils/dir.go b/src/backend/fileutils/dir.go
similarity index 100%
rename from src/fileutils/dir.go
rename to src/backend/fileutils/dir.go
diff --git a/src/fileutils/file.go b/src/backend/fileutils/file.go
similarity index 100%
rename from src/fileutils/file.go
rename to src/backend/fileutils/file.go
diff --git a/src/fileutils/file_test.go b/src/backend/fileutils/file_test.go
similarity index 100%
rename from src/fileutils/file_test.go
rename to src/backend/fileutils/file_test.go
diff --git a/src/go.mod b/src/backend/go.mod
similarity index 100%
rename from src/go.mod
rename to src/backend/go.mod
diff --git a/src/go.sum b/src/backend/go.sum
similarity index 100%
rename from src/go.sum
rename to src/backend/go.sum
diff --git a/src/http/auth.go b/src/backend/http/auth.go
similarity index 100%
rename from src/http/auth.go
rename to src/backend/http/auth.go
diff --git a/src/http/commands.go b/src/backend/http/commands.go
similarity index 100%
rename from src/http/commands.go
rename to src/backend/http/commands.go
diff --git a/src/http/data.go b/src/backend/http/data.go
similarity index 100%
rename from src/http/data.go
rename to src/backend/http/data.go
diff --git a/src/http/http.go b/src/backend/http/http.go
similarity index 100%
rename from src/http/http.go
rename to src/backend/http/http.go
diff --git a/src/http/preview.go b/src/backend/http/preview.go
similarity index 100%
rename from src/http/preview.go
rename to src/backend/http/preview.go
diff --git a/src/http/preview_enum.go b/src/backend/http/preview_enum.go
similarity index 100%
rename from src/http/preview_enum.go
rename to src/backend/http/preview_enum.go
diff --git a/src/http/public.go b/src/backend/http/public.go
similarity index 100%
rename from src/http/public.go
rename to src/backend/http/public.go
diff --git a/src/http/public_test.go b/src/backend/http/public_test.go
similarity index 100%
rename from src/http/public_test.go
rename to src/backend/http/public_test.go
diff --git a/src/http/raw.go b/src/backend/http/raw.go
similarity index 100%
rename from src/http/raw.go
rename to src/backend/http/raw.go
diff --git a/src/http/resource.go b/src/backend/http/resource.go
similarity index 100%
rename from src/http/resource.go
rename to src/backend/http/resource.go
diff --git a/src/http/search.go b/src/backend/http/search.go
similarity index 100%
rename from src/http/search.go
rename to src/backend/http/search.go
diff --git a/src/http/settings.go b/src/backend/http/settings.go
similarity index 100%
rename from src/http/settings.go
rename to src/backend/http/settings.go
diff --git a/src/http/share.go b/src/backend/http/share.go
similarity index 100%
rename from src/http/share.go
rename to src/backend/http/share.go
diff --git a/src/http/static.go b/src/backend/http/static.go
similarity index 100%
rename from src/http/static.go
rename to src/backend/http/static.go
diff --git a/src/http/users.go b/src/backend/http/users.go
similarity index 100%
rename from src/http/users.go
rename to src/backend/http/users.go
diff --git a/src/http/utils.go b/src/backend/http/utils.go
similarity index 100%
rename from src/http/utils.go
rename to src/backend/http/utils.go
diff --git a/src/img/service.go b/src/backend/img/service.go
similarity index 100%
rename from src/img/service.go
rename to src/backend/img/service.go
diff --git a/src/img/service_enum.go b/src/backend/img/service_enum.go
similarity index 100%
rename from src/img/service_enum.go
rename to src/backend/img/service_enum.go
diff --git a/src/img/service_test.go b/src/backend/img/service_test.go
similarity index 100%
rename from src/img/service_test.go
rename to src/backend/img/service_test.go
diff --git a/src/img/testdata/20130612_142406.jpg b/src/backend/img/testdata/20130612_142406.jpg
similarity index 100%
rename from src/img/testdata/20130612_142406.jpg
rename to src/backend/img/testdata/20130612_142406.jpg
diff --git a/src/img/testdata/IMG_2578.JPG b/src/backend/img/testdata/IMG_2578.JPG
similarity index 100%
rename from src/img/testdata/IMG_2578.JPG
rename to src/backend/img/testdata/IMG_2578.JPG
diff --git a/src/img/testdata/gray-sample.jpg b/src/backend/img/testdata/gray-sample.jpg
similarity index 100%
rename from src/img/testdata/gray-sample.jpg
rename to src/backend/img/testdata/gray-sample.jpg
diff --git a/src/main.go b/src/backend/main.go
similarity index 100%
rename from src/main.go
rename to src/backend/main.go
diff --git a/src/rules/rules.go b/src/backend/rules/rules.go
similarity index 100%
rename from src/rules/rules.go
rename to src/backend/rules/rules.go
diff --git a/src/rules/rules_test.go b/src/backend/rules/rules_test.go
similarity index 100%
rename from src/rules/rules_test.go
rename to src/backend/rules/rules_test.go
diff --git a/src/runner/commands.go b/src/backend/runner/commands.go
similarity index 100%
rename from src/runner/commands.go
rename to src/backend/runner/commands.go
diff --git a/src/runner/commands_test.go b/src/backend/runner/commands_test.go
similarity index 100%
rename from src/runner/commands_test.go
rename to src/backend/runner/commands_test.go
diff --git a/src/runner/parser.go b/src/backend/runner/parser.go
similarity index 100%
rename from src/runner/parser.go
rename to src/backend/runner/parser.go
diff --git a/src/runner/runner.go b/src/backend/runner/runner.go
similarity index 100%
rename from src/runner/runner.go
rename to src/backend/runner/runner.go
diff --git a/src/scripts/bump_version.sh b/src/backend/scripts/bump_version.sh
similarity index 100%
rename from src/scripts/bump_version.sh
rename to src/backend/scripts/bump_version.sh
diff --git a/src/scripts/commitlint.sh b/src/backend/scripts/commitlint.sh
similarity index 100%
rename from src/scripts/commitlint.sh
rename to src/backend/scripts/commitlint.sh
diff --git a/src/search/conditions.go b/src/backend/search/conditions.go
similarity index 100%
rename from src/search/conditions.go
rename to src/backend/search/conditions.go
diff --git a/src/search/search.go b/src/backend/search/search.go
similarity index 100%
rename from src/search/search.go
rename to src/backend/search/search.go
diff --git a/src/settings/branding.go b/src/backend/settings/branding.go
similarity index 100%
rename from src/settings/branding.go
rename to src/backend/settings/branding.go
diff --git a/src/settings/defaults.go b/src/backend/settings/defaults.go
similarity index 100%
rename from src/settings/defaults.go
rename to src/backend/settings/defaults.go
diff --git a/src/settings/dir.go b/src/backend/settings/dir.go
similarity index 100%
rename from src/settings/dir.go
rename to src/backend/settings/dir.go
diff --git a/src/settings/settings.go b/src/backend/settings/settings.go
similarity index 100%
rename from src/settings/settings.go
rename to src/backend/settings/settings.go
diff --git a/src/settings/storage.go b/src/backend/settings/storage.go
similarity index 100%
rename from src/settings/storage.go
rename to src/backend/settings/storage.go
diff --git a/src/share/share.go b/src/backend/share/share.go
similarity index 100%
rename from src/share/share.go
rename to src/backend/share/share.go
diff --git a/src/share/storage.go b/src/backend/share/storage.go
similarity index 100%
rename from src/share/storage.go
rename to src/backend/share/storage.go
diff --git a/src/storage/bolt/auth.go b/src/backend/storage/bolt/auth.go
similarity index 100%
rename from src/storage/bolt/auth.go
rename to src/backend/storage/bolt/auth.go
diff --git a/src/storage/bolt/bolt.go b/src/backend/storage/bolt/bolt.go
similarity index 100%
rename from src/storage/bolt/bolt.go
rename to src/backend/storage/bolt/bolt.go
diff --git a/src/storage/bolt/config.go b/src/backend/storage/bolt/config.go
similarity index 100%
rename from src/storage/bolt/config.go
rename to src/backend/storage/bolt/config.go
diff --git a/src/storage/bolt/importer/conf.go b/src/backend/storage/bolt/importer/conf.go
similarity index 100%
rename from src/storage/bolt/importer/conf.go
rename to src/backend/storage/bolt/importer/conf.go
diff --git a/src/storage/bolt/importer/importer.go b/src/backend/storage/bolt/importer/importer.go
similarity index 100%
rename from src/storage/bolt/importer/importer.go
rename to src/backend/storage/bolt/importer/importer.go
diff --git a/src/storage/bolt/importer/users.go b/src/backend/storage/bolt/importer/users.go
similarity index 100%
rename from src/storage/bolt/importer/users.go
rename to src/backend/storage/bolt/importer/users.go
diff --git a/src/storage/bolt/share.go b/src/backend/storage/bolt/share.go
similarity index 100%
rename from src/storage/bolt/share.go
rename to src/backend/storage/bolt/share.go
diff --git a/src/storage/bolt/users.go b/src/backend/storage/bolt/users.go
similarity index 100%
rename from src/storage/bolt/users.go
rename to src/backend/storage/bolt/users.go
diff --git a/src/storage/bolt/utils.go b/src/backend/storage/bolt/utils.go
similarity index 100%
rename from src/storage/bolt/utils.go
rename to src/backend/storage/bolt/utils.go
diff --git a/src/storage/storage.go b/src/backend/storage/storage.go
similarity index 100%
rename from src/storage/storage.go
rename to src/backend/storage/storage.go
diff --git a/src/tools/go.mod b/src/backend/tools/go.mod
similarity index 100%
rename from src/tools/go.mod
rename to src/backend/tools/go.mod
diff --git a/src/tools/go.sum b/src/backend/tools/go.sum
similarity index 100%
rename from src/tools/go.sum
rename to src/backend/tools/go.sum
diff --git a/src/tools/package.json b/src/backend/tools/package.json
similarity index 100%
rename from src/tools/package.json
rename to src/backend/tools/package.json
diff --git a/src/tools/tools.go b/src/backend/tools/tools.go
similarity index 100%
rename from src/tools/tools.go
rename to src/backend/tools/tools.go
diff --git a/src/tools/yarn.lock b/src/backend/tools/yarn.lock
similarity index 100%
rename from src/tools/yarn.lock
rename to src/backend/tools/yarn.lock
diff --git a/src/users/password.go b/src/backend/users/password.go
similarity index 100%
rename from src/users/password.go
rename to src/backend/users/password.go
diff --git a/src/users/permissions.go b/src/backend/users/permissions.go
similarity index 100%
rename from src/users/permissions.go
rename to src/backend/users/permissions.go
diff --git a/src/users/storage.go b/src/backend/users/storage.go
similarity index 100%
rename from src/users/storage.go
rename to src/backend/users/storage.go
diff --git a/src/users/storage_test.go b/src/backend/users/storage_test.go
similarity index 100%
rename from src/users/storage_test.go
rename to src/backend/users/storage_test.go
diff --git a/src/users/users.go b/src/backend/users/users.go
similarity index 100%
rename from src/users/users.go
rename to src/backend/users/users.go
diff --git a/src/version/version.go b/src/backend/version/version.go
similarity index 100%
rename from src/version/version.go
rename to src/backend/version/version.go
diff --git a/src/frontend/src/api/search.js b/src/frontend/src/api/search.js
index 5a2bf575..42846880 100644
--- a/src/frontend/src/api/search.js
+++ b/src/frontend/src/api/search.js
@@ -14,7 +14,7 @@ export default async function search(base, query) {
let data = await res.json();
data = data.map((item) => {
- item.url = `/${base}` + url.encodePath(item.path);
+ item.url = `/files${base}` + url.encodePath(item.path);
if (item.dir) {
item.url += "/";