Skip to main content

A tool that will GUI-ify your functions

Project description

GUIfy


Simplest form of GUI for automation scripts.

Made with eel as python backend and react used as frontend.

Please see release branches for an optimized built react app

Main tab

main_tab

Config tab

config_tab

How to use


Quick start

pip install guify

Look inside this example or follow the instructions below:

# main.py
import GUIfy from guify

app = GUIfy(app_name='GUIfy') # default app_name is 'GUIfy'

@app.register(name='Test 1', priority=0, description='This is a test')
def test_1(example_arg):
   app.monitor.clear_text()
   app.monitor.set_text('This is a test\n')
   app.monitor.append_text('This is a test2\n')
   result = app.prompt_user('This is a prompt') # True if user clicked OK, False if user clicked Cancel
   foo = app.config.get('example','foo') # == bar



app.run()

Monitor object

app.monitor is the monitor object representing the preview window on right hand side of the GUI,

  • set_text(text: str) -> None // will set the text in the monitor to whatever passed in "text" argument
  • append_text(text: str) -> None // will append the next to the monitor
  • clear_text(text: str) -> None // will clear all text in the monitor

Config tab

"app.config" is an object representing the config tab. All configurations are stored in config.ini.

self.config methods:

  • save() // Save config to config.ini
  • load() // Load config from config.ini
  • get_section() // load() and return an entire section as a dictionary
  • get(section, attribute) // load() and get value of attribute in section
  • set(section, attribute, value) // load() and set value of attribute in section and then save().

config file:

[example]
foo = bar
get_secion('example') -> {'foo': 'bar'}
get('example', 'foo') -> 'bar'

Settings

in settings.ini you can change the following settings:

  • reports_dir - the directory where the reports will be saved
  • report_name_prefix - can be one of the variables passed in to your run() functions, uses this variable name as identification for reports

Building

To build an executable in dist folder, run the following:

npm run build

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

guify-0.1.2.tar.gz (378.5 kB view details)

Uploaded Source

Built Distribution

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

guify-0.1.2-py3-none-any.whl (382.5 kB view details)

Uploaded Python 3

File details

Details for the file guify-0.1.2.tar.gz.

File metadata

  • Download URL: guify-0.1.2.tar.gz
  • Upload date:
  • Size: 378.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.0

File hashes

Hashes for guify-0.1.2.tar.gz
Algorithm Hash digest
SHA256 9db55b29ebb4bff7440061399f3e25db96d8b24c50be58e2f74094671cf93903
MD5 ea686bf6bcb5dd7c8e5f47b85f05bfb6
BLAKE2b-256 bcc00b73b7747b1468dcae732991d330f68fbe517a16e531e6ff54937bc6caea

See more details on using hashes here.

File details

Details for the file guify-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: guify-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 382.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.0

File hashes

Hashes for guify-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 fe13e82f3222f02586ffa79c8dba280fc1c8879de80a7f5a68fd8d2dd28c84ef
MD5 dfed80d0e11d5a691ac549626a6b413d
BLAKE2b-256 a3cad7fc64d6a375dd1ed29ce0315773ffd0fdbd1a322f4ef0b83ba0b964999d

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