2019-05-19 10:47:08 +05:30
|
|
|
# nodejs-fm
|
2019-05-24 11:04:51 +05:30
|
|
|
|
|
|
|
[](https://travis-ci.org/chrisvrose/nodejs-fm)
|
|
|
|
|
2019-05-24 12:04:21 +05:30
|
|
|
A simple file manager for managing files on a remote fs using Node.
|
2019-05-19 10:47:08 +05:30
|
|
|
|
2019-05-24 12:04:21 +05:30
|
|
|
Dependencies: `express` `body-parser` `@fortawesome/fontawesome-free` `chai` `mocha` `chai-http` `jquery` `requests` `sqlite3`
|
2019-05-19 10:47:08 +05:30
|
|
|
|
2019-05-24 12:04:21 +05:30
|
|
|
## Checklist
|
2019-05-24 11:35:33 +05:30
|
|
|
|
2019-05-24 11:14:19 +05:30
|
|
|
- [x] Folder Traversal
|
|
|
|
- [ ] Filesystem viewing
|
|
|
|
- [ ] Upload
|
|
|
|
- [ ] Auth
|
2019-05-19 10:47:08 +05:30
|
|
|
|
2019-05-24 12:04:21 +05:30
|
|
|
## 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
|
|
|
|
|
|
|
|
Requests:
|
|
|
|
|
|
|
|
```json
|
|
|
|
{
|
|
|
|
loc: "<valid location>"
|
|
|
|
}
|
|
|
|
```
|
|
|
|
Responses (Only for directory traversals):
|
|
|
|
|
|
|
|
```json
|
|
|
|
{
|
|
|
|
loc: "<location>",
|
|
|
|
back: "<location>|null",
|
|
|
|
contents:[
|
|
|
|
{
|
|
|
|
name:"<filename>",
|
|
|
|
path:"<location>",
|
|
|
|
isDir: "<true|false>"
|
|
|
|
},
|
|
|
|
...
|
|
|
|
]
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
## Credit
|
2019-05-24 11:35:33 +05:30
|
|
|
|
2019-05-19 18:48:50 +05:30
|
|
|
- Samuel Thornton: [Material Design Box Shadows]("https://codepen.io/sdthornton/pen/wBZdXq")
|
2019-05-24 14:41:30 +05:30
|
|
|
- Chris Pratt: [File Download via Ajax]('https://codepen.io/chrisdpratt/pen/RKxJNo')
|
2019-05-24 11:27:55 +05:30
|
|
|
- StackOverflow: Troubleshooting errors
|
|
|
|
- Google: All knowing
|