Skip to main content

Converts CLIs into web forms

Project description

clooey

Command Line Interface (CLI) to a minimal Web UI.

Getting Started

Start by installing clooey using pip.

pip install clooey

You can then use the API to convert a script into a form.

import clooey

cli = clooey.parse('sample.py')
html = clooey.generate(cli, clooey.TEMPLATE_FORM)

Want to customize the form HTML? All templates are Jinja2 formatted. By default, the form template is provided with one inputs list of strings, which are the prompts provided to input function calls.

Web Demo

See an actual web form by running the following command:

clooey web

From left to right, you'll see the launched Flask app with the following form, fill out the form as you would the CLI, then submit the form to see the output.

Screenshot 2024-06-10 at 9 40 48 PM Screenshot 2024-06-10 at 9 41 58 PM Screenshot 2024-06-10 at 9 41 09 PM

You can optionally provide your own script to parse. For example,

wget https://github.com/alvinwan/clooey/blob/main/clooey/examples/password.py
clooey web --program password.py

CLI Demo

Run the CLI.

clooey cli

You'll then see the following output

<form method="post">
    
    <label>Enter your name: </label>
    <input type="text" name="1">
    
    <label>Enter your age: </label>
    <input type="text" name="2">
    
    <label>Enter your city: </label>
    <input type="text" name="3">
    
    <input type="submit" value="submit">
</form>

Next, the script will prompt you for input, as though you were filling out the web form.

Enter your name: Alvin
Enter your age: 1000
Enter your city: Seattle

Finally, the script will execute the Python script with the input values.

Welcome to Seattle, Alvin (1000)!

You can optionally provide your own script to parse. For example,

wget https://github.com/alvinwan/clooey/blob/main/clooey/examples/piglatin.py
clooey cli --program piglatin.py

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

clooey-0.1.1.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

clooey-0.1.1-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

Details for the file clooey-0.1.1.tar.gz.

File metadata

  • Download URL: clooey-0.1.1.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.11

File hashes

Hashes for clooey-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5d932801e4ef9f04f64fb6461e5011e895081f317e0e1f32a3f7e3b5bbd267b3
MD5 92b49c744a5b30d0857e4a613c3c18fc
BLAKE2b-256 9bf070b77af0a0f7eb5c8f1be9ff3ad2298bc03358bb5e63e2dcb6e95cabb887

See more details on using hashes here.

File details

Details for the file clooey-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: clooey-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 6.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.10.11

File hashes

Hashes for clooey-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 0220f9264816ad8bcb8053f7ed7fa8ec0e985f38e250c5ecb3488d6b7f6c701f
MD5 ecee4947ac86a77ff61a89eb4c637738
BLAKE2b-256 33c282879b2f50a4c1d4a2d4dfbd6405bafd58de653f4f24776c76904f9befbe

See more details on using hashes here.

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