0c428a2b3320d4be49d2d076cf58f98331ad5e41
nodejs-fm
A simple file manager for managing files on a remote fs using Node.
Dependencies: express
body-parser
@fortawesome/fontawesome-free
jquery
connect-busboy
Dependencies(testing): chai
mocha
chai-http
Checklist
- Folder Traversal
- File Downloads
- File Moving
- Upload
Why
Personal requirement.
Because of this, only renaming/moving(only in same fs, due to fs.rename()
) is available, and uploading/downloading.
No authentication, as it is based on a small local server, and the major way of accessing it, is ssh.
Usage
Use settings.json
and point it to a valid address, and select a required port. Default 8080
For the backend, the jsons have this form.
For running it:
# Clone repo
git clone https://github.com/chrisvrose/nodejs-fm.git
# Move into repo folder
cd nodejs-fm/
# Setup the project
npm i
# Your own config, start with settings.json
#...
# Start the server
npm start
Server requests
Requests:
{
'loc': "<valid location>"
}
Responses (Only for directory traversals):
{
'loc': "<location>",
'back': "<location|null>",
'contents':[
{
'name':"<filename>",
'path':"<location>",
'isDir': "<true|false>"
},
...
]
}
Credit
- Samuel Thornton: Material Design Box Shadows
- Chris Pratt: File Download via Ajax
- StackOverflow: Troubleshooting errors
- Google: All knowing
Languages
JavaScript
67.9%
CSS
16.7%
HTML
15.4%