Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/serverwentdown/file-manager
A basic node.js file manager
https://github.com/serverwentdown/file-manager
express file-manager nodejs totp
Last synced: about 2 months ago
JSON representation
A basic node.js file manager
- Host: GitHub
- URL: https://github.com/serverwentdown/file-manager
- Owner: serverwentdown
- License: mit
- Created: 2016-10-09T05:16:12.000Z (about 8 years ago)
- Default Branch: main
- Last Pushed: 2024-03-26T02:40:01.000Z (9 months ago)
- Last Synced: 2024-04-14T13:12:55.302Z (8 months ago)
- Topics: express, file-manager, nodejs, totp
- Language: JavaScript
- Homepage: https://hub.docker.com/r/serverwentdown/file-manager
- Size: 441 KB
- Stars: 97
- Watchers: 6
- Forks: 37
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# file-manager
A basic node.js file manager.
## Features
- [x] [Simple authentication](https://github.com/ambrosechua/file-manager#key)
- [x] Directory browsing
- [x] Filesize
- [ ] Permissions
- [ ] Owner
- [x] Folder creation
- [x] File uploads
- [ ] Bulk file uploads
- [ ] Large file uploads (sharded)
- [x] File/folder renaming
- [x] Previews for small image files
- [x] Bulk file/folder selection
- [x] Delete
- [x] Recursive directory delete
- [ ] Move
- [ ] Copy
- [x] Download archive
- [ ] Change permissions
- [x] Remote commands## Usage
For users who prefer Docker:
```zsh
docker run --rm -it -v $PWD:/data -p 8080:8080 serverwentdown/file-manager
```Or if you have Node.js installed:
```zsh
npm install -g https://github.com/serverwentdown/file-manager.git
file-manager
```## Screenshots
These screenshots are not up-to-date.
![](https://ambrose.makerforce.io/file-manager/login1.png)
![](https://ambrose.makerforce.io/file-manager/upl2.png)
![](https://ambrose.makerforce.io/file-manager/ls1.png)
![](https://ambrose.makerforce.io/file-manager/rm1.png)
![](https://ambrose.makerforce.io/file-manager/dl1.png)
## Options
The following environmental variables can be used to configure `file-manager`.
### SESSION_KEY=
Express session key, generate something random.
### SHELL=
Enable the shell feature, which allows users to start a login shell (when set to `login`) or the binary specified by this option (example: `/bin/bash`). Be careful when enabling this feature as anyone with access to this portal can execute any command on your machine.
### CMD=
Set to something other than "false" to enable running single commands in the default shell, usually `/bin/sh`. Be careful when enabling this feature as anyone with access to this portal can execute any command on your machine.
### PORT=
Listen on $PORT. Default: 8080
### KEY=
Setting this variable enables authentication using TOTP (RFC6238). $KEY is a base32 encoded shared secret. This key is only a weak means of protection as it is succeptable to brute-force. You can generate one from [here](http://www.xanxys.net/totp/) or manually.