Generate a webpage as a GUI for a Python script, and serve from anywhere.
Project description
Python Web I/O
Generate a webpage as a GUI for a Python script, and serve from anywhere.
Documentation
Check out the wiki.
Quickstart
Install python-web-io locally using:
pip install python-web-io
Or via poetry using:
poetry add python_web_io
If evaluating / testing python-web-io, install dependencies for the example apps using:
poetry add python_web_io --with examples
After installing the project, some environment setup is required:
Required setup
Create an app.py file containing your script, a config.toml setting the script filepath and entrypoint, and an .envrc file to store project secrets. (Note: remember to add .envrc to your .gitignore). Look for example apps in /examples.
.
├── .envrc
├── config.toml
└── app.py
Create the following simple config.toml:
[script]
filepath = "app.py"
entrypoint = "main" # if your app has no entrypoint, remove this parameter.
Add the following environment variables to your .envrc. (Note: remember to activate the .envrc in your terminal using direnv allow)
# server env vars
export PYTHON_WEB_IO_SECRET=""
export PYTHON_WEB_IO_CONFIG=".pythonwebio/config.toml" # defaults to .pythonwebio/config.toml if not set
Generate a random key for PYTHON_WEB_IO_SECRET using this python command line snippet:
python -c 'import secrets; print(secrets.token_hex())'
If testing wikipedia_assistant.py, an OpenAI API key will also need to be set.
export OPENAI_API_KEY=""
Running the webapp
We recommend running python_web_io using uvicorn:
poetry run uvicorn python_web_io.main:app
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file python_web_io-0.2.3.tar.gz.
File metadata
- Download URL: python_web_io-0.2.3.tar.gz
- Upload date:
- Size: 11.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.4.2 CPython/3.9.2 Linux/5.15.90.1-microsoft-standard-WSL2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
927a591220c7d9af6a1c4af49f8412b53c8231102de5c2ba5c53abbd8f59ada1
|
|
| MD5 |
5838e97c3d1adbd679f7296aea0377ff
|
|
| BLAKE2b-256 |
f877a75b29c8d50a207afa09bf803395d3caad306f2222ccc03021ac9e3be4c6
|
File details
Details for the file python_web_io-0.2.3-py3-none-any.whl.
File metadata
- Download URL: python_web_io-0.2.3-py3-none-any.whl
- Upload date:
- Size: 12.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.4.2 CPython/3.9.2 Linux/5.15.90.1-microsoft-standard-WSL2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5e3a2be46096aac9e011d137d57e64fdd96d353e579dcb40593bd2bcaf379646
|
|
| MD5 |
ec134df170eceae59b49698c03609c3d
|
|
| BLAKE2b-256 |
c43a464d31c20849953cdae9f4b39d0ff2486ebdbf3ab315334f9f0937e00cd1
|