Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/philbobaggins/file-upload
A small web application to accept file uploads
https://github.com/philbobaggins/file-upload
docker file-upload rocket rust rust-lang rust-rocket upload web webapp
Last synced: 7 days ago
JSON representation
A small web application to accept file uploads
- Host: GitHub
- URL: https://github.com/philbobaggins/file-upload
- Owner: PhilboBaggins
- License: apache-2.0
- Created: 2023-10-18T03:06:52.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-03-13T03:09:44.000Z (8 months ago)
- Last Synced: 2024-10-31T23:06:48.607Z (7 days ago)
- Topics: docker, file-upload, rocket, rust, rust-lang, rust-rocket, upload, web, webapp
- Language: Rust
- Homepage:
- Size: 44.9 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# ?????????????
A small web application to accept file uploads......
.........
.... allow people to upload files to my file server using only a web browser (i.e. so users don't have to install a SFTP client or any other software).
Each file will be placed in it's own subdirectory with the date & time of upload as the directory name, so you can easily find your files. The idea is that after someone has uploaded a file, you would go grab it and move it somewhere else, so nothing is left in the upload directory long term.
## Running with Docker or Podman
...... forward port 8000 .... map /opt/file_upload/data mapped to wherever you want the files to be stored
## TODO
* [ ] Documentation
* [ ] Docker image
* [x] Get it running
* [ ] Usage instructions
* [ ] Get it working with a smaller image like alpine
* [x] Prevent "invalid cross-device link" error:
*
*
* [ ] Get it to work without the`set_permissions` call
* This might be useful:
* [ ] Improve `index.html`:
* [x] Make it pretty
* [ ] Allow files to be dragged and dropped
* [x] Show acceptable file extensions
* [ ] Check the file extension locally in the browser before upload so user doesn't have to wait for upload to complete on a file that will be rejected anyway
* [x] Progress bar
* [ ] Authentication
* [x] Replace synchronous functions with async equivalents:
* [x] `std::fs::create_dir_all`
* [x] Creating and writing to `Original filename.txt`
* [ ] favicon
* [ ] Time zone -
* [ ] Sends a message to Slack when a file is uploaded## License
Licensed under either of the following:
* Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or )
* MIT license ([LICENSE-MIT](LICENSE-MIT) or )