Package Exports
- http-up
- http-up/lib/http-up.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (http-up) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
http-up
Simple share folder via http with upload
Multiple files upload to current showed folder
In extended mode you can doing more
Mobile window
Fast running without install
npx http-up .
or
npx http-up --port 3999 /path/to/fold
If you switch --extend-mode
npx http-up --extend-mode /tmp
App will change main list view to table. And you can operate with files - delete, move, copy
Below you see display width more than 992 pix (1), less than (2) and mobile window (3):
Preview doc button
For Thumbnails support read below
Buttons share/rename/edit
Edit button work for formats html, rtf, doc, docx, odt
Basic auth
[!IMPORTANT]
It is recommend for work on public network interfaces
every time when you start, you get a list of random accounts
npx http-up --basic .
or only one basic auth specific user
npx http-up --user login1 --password EAJteG5 .
The safest run
npx http-up --tls --basic /path/to/you
read for TLS Support below
Only share
npx http-up --upload-disable --folder-make-disable /tmp/fold
File encrypt
[!IMPORTANT]
Be careful. If you download.crypt
file with WRONG password, it file will be contain MESS of bytes
Your server need package openssl
. It will be use openssl aes-256-cbc
npx http-up --extend-mode --crypt /tmp
Then, set your passcode to the form. The passcode store on the form between requests and you not need input it every time (if you clear it server will not use openssl).
During the process of uploading, your files will be encrypt and their EXT change to .crypt
When files lying on your server, their data is crypted.
If you need decrypt any .crypt
flles, set your passcode, and click on file. During download this file, it will be decrypt on the fly.
Server will be encrypt upload file:
npx http-up --extend-mode --crypt /tmp
- if you set
--crypt
arg on cmd - if you set passcode (pass code set by form)
Server will be decrypt download file:
npx http-up --extend-mode --crypt /tmp
- if you set
--crypt
arg on cmd - if filename contain
.crypt
extension - if you set right passcode (pass code set by form)
Server will be decrypt download file (case 2):
npx http-up /tmp
- if filename contain
.crypt
extension - if you get file with
code
param:/fold3/file.jpg.crypt?code=YOUR_PASS_HERE
Automatic TLS keys generate
- For start HTTPS server you need
easyrsa
linux package - When you start server with
--tls
option, all keys generate automatically
npx http-up . --tls
- Server use self signed certs, generated at first time. Thus you need approve this connection on your clients.
Magic file index.html inside any folder
If you put inside folder index.html
, it will be return as content
Thumbnails support
You need convert
(ImageMagick package) for preview images jpg, png, gif
For document preview you need libreoffice
package. Formats pdf, rtf, doc, docx, xls, xlsx, odt, ods
Linux packages needs for full functional
md5sum
(coreutils package) - make md5 sum of fileconvert
(ImageMagick package) - for thumbnailslibreoffice
(free office) - for thumbnailseasyrsa
- package for certs buildopenssl
- encrypt supportzip
- cmd util
Notes
[!CAUTION] Be careful, if you start this App on public network interface, anybody can work with it
[!CAUTION]
Always run this app only under unprivileged common user
- If you run application under some User, this user should be have privileges to write target folder
History
backlog
-
- add table of files with extended information and sort instead simple list?
-
- need some aside panel with folders tree?
-
- save whitespaces for filenames?
-
- add arg --tee and --log to file
-
- need tests and vulnerability tests too
-
- what is the lib can resize images enough fast
-
- and how store thumbs (home dot cache folder?)
2.0.0
- database support
- rename button
- share button
- edit button for
html, rtf, doc, docx, odt
- speed up hash search for thumbnails
- event log
- upload event log as JSON
- refactoring
1.6.5
- add compression
1.6.4
- fix upload with code undefined
1.6.1
- API: remove target file or folder while COPY or MOVE
1.6.0
- file encrypt
1.5.0
- move group operation buttons to top panel
- add sort operation
- add move group API (with side panel folder)
- add copy group API (with side panel folder)
- add zip and download group API
1.4.0
- make root config folder as /home/USERNAME/.httpup/
- temp and easyrsa folder moved to root config folder
- add /__thumb/ preview generator for img and documents