JSPM

  • Created
  • Published
  • Downloads 207
  • Score
    100M100P100Q75361F
  • License MIT

Simple share folder via http with upload

Package Exports

  • http-up
  • http-up/bin/http-up

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 zero-configuration command line http server with lightweight interface to work with files

Share folder via http with upload

Multiple files upload to current showed folder

In extended mode you can doing more

Mobile window

Fast run without install

npx http-up .

or

npx http-up --port 3999 /path/to/fold
npx http-up --help

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):

[!IMPORTANT]
During group operations COPY or MOVE all target files/folders will be rewrite

Preview doc button

For Thumbnails support read below

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 --login login1 --password EAJteG5 .

The safest run

npx http-up --tls --basic /path/to/you

read for TLS Support below

Only share

npx http-up --share-only /tmp/fold

it is disable "upload" and disable "make new folder" buttons

Online editor

You can online edit files html, rtf, doc, docx, odt as office files.

Or html, txt, js, css, md, sh, json formats as source code.

Or md as markdown.

You need libreoffice package for office files.

Office files follow this flow: file.doc => file.html, edit => file.doc

New filename ext

If you set extension for file as rtf, doc, docx, odt, after create you can edit it with online WYSIWYG.

(For formats rtf, doc, docx, odt you need libreoffice package)

If you set extension html, txt, js, css, md, sh, json, you will edit it with code editor.

Automatic TLS keys generate

  • For start HTTPS server you need openssl 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.

Export log data and how read it

It is work if you use database.

After export log data to file

npx http-up --log-export file.json

You can ask show all data for client "192.168.0.102" inside with jq:

jq '.[] | select(.ip=="192.168.0.102")' file.json

Or show all events, contain "spring" substring:

jq '.[] | select(.msg | contains("spring"))' file.json

Or you can work with SQL directly inside .httpup/db folder

Magic file index.html inside any folder

If you put inside folder index.html, it will be return as content

Thumbnails support

For preview images jpg, png, gif you not need anything.

For document preview you need libreoffice package. Formats pdf, rtf, doc, docx, xls, xlsx, odt, ods

Dependencies

Linux packages needs for full functional

  • libreoffice - for doc thumbnails, for doc files online edit
  • openssl - package for certs build

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

  • save whitespaces for filenames?
  • what is the lib can resize images enough fast
  • project needs middleware (or module arch) or not
  • TS ?
  • rich frontend (react, vue) ?
  • tabs

3.2.0

  • remove zip util dependency
  • api/post_zip: add support work with two modes - zip util and internal zip create
  • fix for create small image thumbnail (config.thumb.IMG.min_size)

3.1.0

  • thumbnails: rewrite to async
  • thumbnails: removed dependence ImageMagick and md5
  • api/post_file: rewrite to async
  • api/get_all: rewrite to async
  • File implementation
  • new index4.js
  • codemirror bundle update cm6.bundle-20250710.min.js

codemirror:

  • disable autocomplete
  • disable black theme
  • add highlight JSON

editors:

  • open SH as CODE
  • for new SH file - open CODE online editor
  • for new JSON file - open CODE online editor
  • for new MD file - open in MARKDOWN editor
  • fix: ability to save EMPTY source code file

3.0.0

  • fresh packages
  • code rewrite
  • async everywhere
  • new MARKDOWN editor
  • database is disabled by default
  • log output disable option
  • remove jquery
  • remove tree_walk, remove bstreeview (rewrite to "clipboard style")
  • can i print without template engine? (remove handlebars?)
  • facilitate css grid
  • combine all css to html page
  • remove SHARE option
  • remove ADMIN console
  • remove file ENCRYPT option

other history here

Any questions

https://github.com/western/http-up/issues