Skip to main content

A simple flask-based file sharing / distribution service

Project description

netfshare

A flask-based local network file sharing tool.

Not for production environements. Use with care.

Installation and use

  1. Install the netfshare python package:

    py -m pip install netfshare

  2. Navigate to the directory that you want to share the contents of.

  3. (OPTIONAL) To secure your WSGI application, set a custom SECRET_KEY environment variable, or create a .env file in the shared directory defining the SECRET_KEY:

     SECRET_KEY=my_secret_key
    
  4. Run netfshare to start the sharing service:

    py -m netfshare

The service cam+n be accessd at <your-local-ip>:5000.

Make sure your machine is discoverable in the local network and that the required firewall rules are active.

Admin access

The netfshare app automatically recognizes a client that's accessing the app from the host (machine running the app) as admin.

If you're having issues with admin access (e.g. you're not recognized as admin despite accessing the app from your local machine), try accessing the app directl at:

http://127.0.0.1:<port>

Sharing settings

Visit the service website Admin interface from the machine running the service to manage the sharing settings.

netfshare supports downloading the contents (subdirectories) of your shared folder, as well as uploading clients' content to selected directories inside the shared folder.

Only downloads of whole subdirectories are supported, as .zip archives. To make files available for downalod, they must be placed inside a subdirectory of the sharedfolder, and the appropriate sharing mode must be set for this subdirectory in the Admin web interface.

Currently, the supported sharing modes are:

  • read_only: whole subdirectories of the shared folder can be downloaded as a .zip archive.
  • upload_only: clients can upload their data into a selected subdirectory of the shared folder. The uploaded content is placed inside a subfolder with the user's selected name. Currently, only a single upload by each user is allowed.

Localization

netfshare supports localization using flask-babel.

The client-facing routes of the app are translated into English and Slovenian.

To update the translations after adding / modifying app text, run the following to get new text to bt translated and update the Slovenian translation file,:

pybabel extract -F babel.cfg -o messages.pot .
pybabel update -i messages.pot -d netfshare/translations

Now edit / add new translations in translations/sl/LC_MESSAGES/messages.po and compile the new translations:

pybabel compile -d netfshare/translations

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

netfshare-0.6.tar.gz (55.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

netfshare-0.6-py3-none-any.whl (52.9 kB view details)

Uploaded Python 3

File details

Details for the file netfshare-0.6.tar.gz.

File metadata

  • Download URL: netfshare-0.6.tar.gz
  • Upload date:
  • Size: 55.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for netfshare-0.6.tar.gz
Algorithm Hash digest
SHA256 30a6a90bb040675e66f72724eb36445dfd1f7fb1fc40200e96b6f662c7f4c50c
MD5 df44b73f9ed830e50c00a09d041114ff
BLAKE2b-256 c8d50377aeb62f60c4ea95be3e45d8b657871f9411e0341f1a2222c4ced739b9

See more details on using hashes here.

File details

Details for the file netfshare-0.6-py3-none-any.whl.

File metadata

  • Download URL: netfshare-0.6-py3-none-any.whl
  • Upload date:
  • Size: 52.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.9

File hashes

Hashes for netfshare-0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 4e759a3124f41039c4a8608c66d144a0a3925aa30cc1b03068f97e864fa2109f
MD5 f6120d07ab9383445c7f448fa91a5d25
BLAKE2b-256 04831e7f25758cc9b670b6d4b7a8cb552df86481460bbfcd318da6f92e85d134

See more details on using hashes here.

Supported by

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