Skip to content

Easily turn your Python functions into GUI applications

License

Notifications You must be signed in to change notification settings

offerrall/FuncToGUI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Easily turn your Python functions into GUI applications.
Perfect for internal tools, quick testing, or prototypes. FuncToGUI is cross-platform, updates in real-time, and requires no additional UI code. Implemented in 1500 lines of code!

FuncToGUI is built on top of Kivy and pyler for file handling.

Quick Start

Normal function (no data limits):

from functogui import App

def is_even(number: int = 4) -> bool:
    return number % 2 == 0

App(is_even)

Function with UI types (limits the input data):

from functogui import App, intUi, intReturn
from typing import Annotated

def time_to_seconds(hours: Annotated[int, intUi(max_value=24)] = 1,
                    minutes: Annotated[int, intUi(max_value=59)] = 30
                    ) -> int:
    
    return (hours * 3600) + (minutes * 60)

App(time_to_seconds)

Key Features

  • Function-to-GUI Transformation: Turn your function parameters into a GUI interface with minimal setup.
  • No Complex Configuration: Just define your function with the desired ui_types and let FuncToGUI generate the window.
  • Supports Various Parameter Types:
    • intUi
    • boolUi
    • strUi
    • passwordUi
    • listUi
    • selectedUi
    • floatUi
    • fileUi
    • folderUi
    • colorUi
    • timeUi
    • dateUi
  • Supports Various Return Types:
    • boolReturn
    • intReturn
    • strReturn
    • floatReturn
    • imageFileReturn
  • Error Handling: FuncToGUI treats the exceptions already for you.

Installation

git clone https://github.com/offerrall/FuncToGUI
cd FuncToGUI

pip install .

How to Use

This library is designed to be as simple as possible. You only need look at the examples to understand how to use it.

About

Easily turn your Python functions into GUI applications

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published