Skip to main content

A pyramid connector elfinder, specifically for working with jupyter server proxy.

Project description

ImJoy elFinder Binder PyPI Version Test

A web file browser for managing data on remote jupyter servers, specifically built for the ImJoy project, an open source platform for deploying computational tools to the end user.

The frontend is built with elFinder and a Python backend server.

What is elFinder

elFinder is an open-source file manager for web, written in JavaScript using jQuery and jQuery UI, the project is maintained by Studio 42.

Try their online demo here.

Installation

Python 3.5+ is required.

pip install -U imjoy-elfinder

Basic Usage

In your terminal, run the following command:

imjoy-elfinder --thumbnail

(The thumbnail option enables thumbnail for images, it will create a folder named .tmb under your current folder, you can also disable that by remove the --thumbnail option.)

You will then see the following message:

==========ImJoy elFinder server is running=========
http://127.0.0.1:8765

Depending on where you started the command, the file browser will show your current folder as root directory or HOME.

In order to browse your own directory, you can manually set the root directory by passing --root-dir=/PATH/TO/MY/FOLDER.

imjoy-elfinder-screenshot

Use it with remote Jupyter notebook server

If you don't have jupyter notebook, run:

pip install -U jupyter

Next, install ImJoy elFinder with jupyter server proxy extension:

pip install -U imjoy-elfinder[jupyter]

Now start Jupyter notebook as you would do normally, for example:

jupyter notebook --ip=0.0.0.0

You will get a web file browser at http://YOUR_NOTEBOOK_URL/elfinder (depending on what you get from your notebook, for example, the url can be http://localhost:8000/elfinder).

Start a demo with MyBinder

  1. Start an instance on MyBinder: https://mybinder.org/v2/gh/imjoy-team/imjoy-elfinder/master?urlpath=elfinder

  2. You should be able to see a file browser.

Security Considerations

Please be aware that there is potential risk to use ImJoy elFinder locally or remotely over the internet.

Here are some suggestions:

  1. Try to set root-dir to a folder containing the files you actually need, as minimal as possible, avoid exposing the entire file system.

  2. For remote servers, use it via the Jupyter proxy such that the access will be protected by jupyter token or password. also, do not turn off the authentication in Jupyter.

  3. For running it locally, we use allow-origin header (CORS) to protect access from a random website, for that to work, please use a modern browser and keep it updated.

  4. Update ImJoy elFinder regularly with 'pip install -U imjoy-elfinder', in case there is security updates.

Development

For developers, you can enable hot reloading by using hupper:

hupper -m imjoy_elfinder

You can also watch additional files by add -w (e.g.: hupper -m imjoy_elfinder -w imjoy_elfinder/templates/elfinder/main.js)

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

imjoy-elfinder-0.1.59.tar.gz (34.3 kB view details)

Uploaded Source

Built Distribution

imjoy_elfinder-0.1.59-py3-none-any.whl (37.2 kB view details)

Uploaded Python 3

File details

Details for the file imjoy-elfinder-0.1.59.tar.gz.

File metadata

  • Download URL: imjoy-elfinder-0.1.59.tar.gz
  • Upload date:
  • Size: 34.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0.post20200814 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8

File hashes

Hashes for imjoy-elfinder-0.1.59.tar.gz
Algorithm Hash digest
SHA256 027b9ac3dd79e5f9f4c6daf451f812f3246f3680164dfde9eb4ef294dc02a821
MD5 4e232829724663f9cf79927c2c53e4a8
BLAKE2b-256 87a501157a60c9806236cd736aa73b08b16608f4a9a726ae5617e0c7bf01d4d8

See more details on using hashes here.

Provenance

File details

Details for the file imjoy_elfinder-0.1.59-py3-none-any.whl.

File metadata

  • Download URL: imjoy_elfinder-0.1.59-py3-none-any.whl
  • Upload date:
  • Size: 37.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0.post20200814 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.8

File hashes

Hashes for imjoy_elfinder-0.1.59-py3-none-any.whl
Algorithm Hash digest
SHA256 51f302b7341478e574fcd435c21fa71196b24566d0208f9bdfc322550b4c1006
MD5 2070569403360b7b354afa6394be5333
BLAKE2b-256 a7f3747142856a6feb64efe3f6e6cd97bdacd9ce08595bd1e941fc7e4d401004

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page