fileware 1.3
Versions Supported
Language Stats
Repo Stats
Code Stats
Activity
Build Status
FileWare
Set up a file server to access files in local machine from anywhere on the internet.
Setup
Environment Variables:
username: Username to confirm identity. Defaults to user profile name.
password: Password for authentication.
port: Port number to serve. Defaults to 4443.
host_path: Path which is to be hosted. Defaults to home page.
To host on a public facing URL:
ngrok_auth: Ngrok token.
Usage
python3 -m pip install fileware
With Threading
from threading import Thread
import fileware
fileware.models.env.port = 4568
fileware.models.env.host_dir = "movies"
if __name__ == '__main__':
# Initiates the connection and creates a new process if ngrok auth token is valid.
response = fileware.initiate_connection()
print(response.url)
# Runs the server in a thread alongside starting the ngrok process created previously.
thread = Thread(target=fileware.serve,
kwargs={'http_server': response.server, 'process': response.process})
thread.start()
# Do your own task here
# Shutdown the server and join the thread which spun the server up.
fileware.shutdown(http_server=response.server, process=response.process)
thread.join(2e+1)
Without Threading - File Server will terminate only when the main process is killed.
import fileware
if __name__ == '__main__':
response = fileware.initiate_connection()
print(response.url)
fileware.serve(http_server=response.server,process=response.process)
Env vars can be loaded by placing a .env file in current working directory.
The serve function can also take arguments which can be used to override env vars.
Pypi Package
https://pypi.org/project/fileware/
Coding Standards
Docstring format: Google
Styling conventions: PEP 8
Clean code with pre-commit hooks: flake8 and
isort
Linting
PreCommit will ensure linting, and the doc creation are run on every commit.
Requirement
pip install --no-cache pre-commit recommonmark sphinx==5.1.1
Usage
pre-commit run --all-files
Pypi Package
https://pypi.org/project/fileware/
Runbook
https://thevickypedia.github.io/fileware/
License & copyright
© Vignesh Rao
Licensed under the MIT License
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.