GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — python-web-io/python-web-io at main · Cutwell/python-web-io

Expand file tree

/

python-web-io

/
Copy path

Directory actions

More options

More options

Directory actions

More options

More options

Latest commit

 

History

History
History
/

python-web-io

/
Copy path

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
.pythonwebio
.pythonwebio
 
 
examples
examples
 
 
python_web_io
python_web_io
 
 
static
static
 
 
.envrc.example.sh
.envrc.example.sh
 
 
Makefile
Makefile
 
 
README.md
README.md
 
 
poetry.lock
poetry.lock
 
 
pyproject.toml
pyproject.toml
 
 

README.md

Outline

Sticker of a cute yellow Python snake, representing the use of the Python programming language in this project. 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

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.