<h1 align="center">
<b>D E S K F R A M E</b>
</h1>
<p align="center">
DeskFrame is a Python library that simplifies the process of creating graphical user interfaces (GUIs) using XML for layout design and Python for backend logic.
</p>
<div align="center">
[![PyPI version](https://badge.fury.io/py/deskframe.svg)](https://badge.fury.io/py/deskframe) [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/YourUsername/YourRepository/blob/main/LICENSE) ![Tkinter](https://img.shields.io/badge/Tkinter-latest_version-orange) ![CustomTkinter](https://img.shields.io/badge/CustomTkinter-latest_version-darkgreen)
</div>
## Introduction
DeskFrame is a Python library that simplifies the process of converting XML code into Python Tkinter applications. This module allows developers to design Tkinter interfaces using XML, providing a dynamic live preview of the Tkinter application as you write XML code.
The development of Tkinter applications by merging XML with Python.This module not only supports a vast array of standard and custom Tkinter widgets but elevates your development experience through its dynamic live preview feature.
As you frame your front-end piece in XML,instantly witness the changes reflecting in the live preview window.
This application supports the toggling feature to enhance user experience. The generated Tkinter code can be easily converted into an executable file with the help of our user-friendly DeskFrame tool.
## Features
### 1. Wide Widget Support
Support for all standard Tkinter and custom Tkinter widgets. Refer to the [documentation](https://github.com/YourUsername/YourRepository/blob/main/docs/widgets.md) for details on available widgets and their usage.
### 2. Live Preview
Once you run the project using `main.py`, all activities run dynamically, providing a simultaneous live preview. Any changes to the XML file are reflected immediately in the live preview window.
### 3. Front in XML
Design the front-end of your Tkinter application using XML.
### 4. Clean Separation
Maintain a clean separation between the front end and back end for better code organization and readability.
### 5. Customizable
Easily customize and fine-tune the generated Tkinter code, including support for custom widgets and layouts.
### 6. User-Friendly Project Structure
Utilize `deskframe.exe` in the site package to create projects effortlessly. Run `deskframe.exe -startProject 'project_name'` in the command prompt. The project includes Python files for backend activities, XML files for layouts, and various resource folders for media, fonts, menus, and values.
### 7. Easy Application Creation
Use the provided `deskframe.exe` tool to streamline project setup, including creating new activities (`python setup.py -createActivity 'activity_name'`), running the DeskFrame server (`python setup.py -server run`), and more.
### 8. Build Executable File
Command: `python setup.py -buildExe`
## Installation
#### You can install DeskFrame via pip:
Open a terminal or command prompt and run the following command:
```commandline
pip install deskframe
```
This will install DeskFrame and its dependencies on your system.
## Usage
### Create project:
Once DeskFrame is installed, you can create a new project by running the following command:
```commandline
deskframe --startProject project_name
```
Replace `project_name` with the desired name of your project. This command will create a new directory with the specified project name, containing the necessary files and folders to start developing your DeskFrame application.
In developing desktop applications with DeskFrame, organizing your project effectively is key to maintaining clarity and scalability. Let's explore the typical file structure of a DeskFrame project, providing a solid foundation for building your applications efficiently.
This guide provides an overview of the typical file structure you'll encounter after creating a DeskFrame project.
```
project_name/
│
├── python/
│ ├── MainActivity.py
│ └── __init__.py
│
├── res/
│ ├── layout/
│ │ └── activity_main.xml
│ │
│ ├── font/
│ │ └── fonts.ttf
│ │
│ ├── drawable/
│ │ ├── image1.png
│ │ └── image2.jpg
│ │
│ ├── menu/
│ │ └── main_menu.xml
│ │
│ └── values/
│ ├── strings.py
│ └── values.py
│
├── builder.py
├── Config.xml
├── main.py
├── setup.py
└── init.py
```
### Description of Each Component:
- **python/**: Contains the backend logic of your application. Each activity in your application has its corresponding Python file (e.g., `MainActivity.py`, `SecondActivity.py`).
- **res/**: Contains all the resources used in your application.
- **layout/**: Contains XML files defining the UI layout of your activities.
- **font/**: Contains font files (e.g., `.ttf`) used in your application.
- **drawable/**: Contains image files (e.g., `.png`, `.jpg`) used in your application.
- **menu/**: Contains XML files defining menus for your application.
- **values/**: Contains configuration files (e.g., `strings.py`, `values.py`) holding constants and resource values.
- **builder.py**: Script to build the executable file for your project.
- **Config.xml**: Configuration file containing application settings and metadata.
- **main.py**: Main execution starting file of your application.
- **setup.py**: Script to create new activities and run the DeskFrame server.
- **\_\_init\_\_.py**: Python package initialization file.
This structured file organization ensures clarity, maintainability, and ease of development in your DeskFrame projects.
### XML script: `res\layout\activity_main.xml`
```xml
<?xml version="1.0" encoding="UTF-8" ?>
<Layout>
<TextView
text="Hello World">
<Push
expand="True"/>
</TextView>
</Layout>
```
### Python Script: `python\MainActivity.py`
```python
import os
import sys
current = os.path.dirname(os.path.realpath(__file__))
parent = os.path.dirname(current)
sys.path.append(parent)
import customtkinter as tk
from deskframe.views.ViewBuilder import Builder
class MainActivity(tk.CTkFrame):
def __init__(self, master=None, intent=None, **kwargs):
super().__init__(master, **kwargs)
self.intent = intent
self.view = Builder(context="activity_main.xml", _from=self)
self.onCreate()
def onCreate(self):
# Global Variables Declaration
pass
# onClick Methods
# Switch View -> auto created InBuild method, please don't modify
def Intent(self, view):
if self.intent:
self.pack_forget() # Hide the current window
self.intent(view) # Show the destination window
```
### Output :
This script displays a Tkinter window with the centered text "Hello World."
### Creating an Activity in the Project :
To add a new activity to your DeskFrame project, you can use the provided command-line interface. Follow the steps below:
###### Command :
```commandline
~ cd project_directory
~ python setup.py --createActivity 'activity_name'
```
After running the command, DeskFrame will create the necessary files for the new activity, including Python backend and XML layout files, inside the appropriate directories (`python/` and `res/layout/`, respectively).
You can now start customizing your new activity by adding functionality to the Python
backend (`python/'ActivityName'.py`) and designing the UI layout in the XML file (`res/layout/'activity_name'.xml`).
### Run DeskFrame Live Server :
To live preview your DeskFrame project and make changes dynamically, you can run the DeskFrame live server using the provided command-line interface. Follow the instructions below:
```commandline
~ cd project_directory
~ python setup.py --server run
```
This command will launch the DeskFrame server, enabling live preview functionality. You can now make changes to your project files, such as Python scripts or XML layouts, and see the updates reflected immediately in the live preview.
To exit the live server, you can press `Ctrl + C` in the terminal or command prompt where the server is running.
### Run without Live Server
Alternatively, if you do not need live preview functionality and prefer to run your DeskFrame project without it, you can simply execute the main Python script (`main.py`) using the following command:
```
~ cd project_directory
~ python main.py
```
By following these steps, you can choose to either run the DeskFrame live server for dynamic previewing of your project or execute the main script directly for standard project execution.
# Supported Widgets
DeskFrame supports a wide range of widgets for building graphical user interfaces (GUIs) in Python applications. Below is a list of supported widgets along with links to their detailed documentation
Here's a brief overview of each supported widget in DeskFrame, along with a simple description:
```plaintext
+-------------------------+---------------------------------------------------------------+
| Name | Description |
+-------------------------+---------------------------------------------------------------+
| Frame | A container for organizing and grouping other widgets. |
+-------------------------+---------------------------------------------------------------+
| ImageView | Displays images or icons in your application. |
+-------------------------+---------------------------------------------------------------+
| TextView | Displays text in your application. |
+-------------------------+---------------------------------------------------------------+
| Button | A clickable button that triggers actions. Supports various |
| | attributes. Refer to the documentation for examples. |
+-------------------------+---------------------------------------------------------------+
| CheckBox | A checkable box that allows the user to make a binary choice. |
+-------------------------+---------------------------------------------------------------+
| WebCam | Placeholder for webcam-related functionality (customizable). |
+-------------------------+---------------------------------------------------------------+
| Entry | Single-line text entry field. |
+-------------------------+---------------------------------------------------------------+
| VideoView | Displays video content in your application. |
+-------------------------+---------------------------------------------------------------+
| ListBox | A list of selectable items. |
+-------------------------+---------------------------------------------------------------+
| MenuButton | A button that opens a menu when clicked. |
+-------------------------+---------------------------------------------------------------+
| Menu | A popup menu for providing options and commands. |
+-------------------------+---------------------------------------------------------------+
| Separator | A visual separator used to organize layout. |
+-------------------------+---------------------------------------------------------------+
| ToolBar | A toolbar for quick access to frequently used actions. |
+-------------------------+---------------------------------------------------------------+
| RadioButton | A button that allows the user to choose one option from a set.|
+-------------------------+---------------------------------------------------------------+
| Scale | A slider that allows the user to select a value from a range. |
+-------------------------+---------------------------------------------------------------+
| LabeledScale | A labeled slider for selecting a value from a range. |
+-------------------------+---------------------------------------------------------------+
| Scrollbar | A scrollbar for navigating content. |
+-------------------------+---------------------------------------------------------------+
| NoteBook | A container for multiple pages with tabs for navigation. |
+-------------------------+---------------------------------------------------------------+
| SpinBox | An input field for selecting numeric values from a range. |
+-------------------------+---------------------------------------------------------------+
| TreeView | A hierarchical way to display data in a tree-like structure. |
+-------------------------+---------------------------------------------------------------+
| PanedFrame | A container with resizable panes for flexible layout. |
+-------------------------+---------------------------------------------------------------+
| ComboBox | A combination of an entry and a dropdown list. |
+-------------------------+---------------------------------------------------------------+
| OptionMenu | A dropdown menu for selecting from a list of options. |
+-------------------------+---------------------------------------------------------------+
| ProgressBar | Visualizes the progression of an operation. |
+-------------------------+---------------------------------------------------------------+
| ScrollableFrame | A frame with built-in scrolling capability. |
+-------------------------+---------------------------------------------------------------+
| SegmentedButton | A set of buttons where only one can be selected at a time. |
+-------------------------+---------------------------------------------------------------+
| Slider | Allows the user to select a value from a range using a slider.|
+-------------------------+---------------------------------------------------------------+
| Switch | A two-state toggle switch. |
+-------------------------+---------------------------------------------------------------+
| TabView | Organizes content into tabs for easy navigation. |
+-------------------------+---------------------------------------------------------------+
| TextArea | A multi-line text entry field. |
+-------------------------+---------------------------------------------------------------+
| Calendar (DatePicker) | Allows the user to pick a date from a calendar. |
+-------------------------+---------------------------------------------------------------+
| TimePicker | Allows the user to pick a time from a clock interface. |
+-------------------------+---------------------------------------------------------------+
```
## Contact
If you have any questions, suggestions, or feedback regarding DeskFrame, we'd love to hear from you! You can reach out to us via the following channels:
- **Email**: [sribalaji2112@gmail.com](mailto:sribalaji2112@gmail.com)
- **Twitter**: [@DeskFrame](https://twitter.com/DeskFrameHQ)
- **LinkedIn**: [DeskFrame](https://www.linkedin.com/company/deskframe)
## Reporting Issues
If you encounter any issues while using DeskFrame, or if you have suggestions for improvements, please don't hesitate to report them on our GitHub Issues page. Your feedback helps us identify and address any problems in DeskFrame, ensuring a better experience for all users.
[Open a new issue](https://github.com/YourUsername/YourRepository/issues) on GitHub to report any bugs, request new features, or provide general feedback. We appreciate your contributions to improving DeskFrame!
## Authors
### Balaji Santhanam
![Balaji](https://example.com/john_doe_photo.jpg)
Balaji Santhanam is a software developer with expertise in Python and GUI development. He has contributed to the development of DeskFrame, focusing on widget implementation and user interface design.
### Jayasri
![Jayasri](https://example.com/jane_smith_photo.jpg)
Jayasri is a UI/UX designer with a passion for creating intuitive and visually appealing user interfaces. She has collaborated on the design and usability aspects of DeskFrame, ensuring a seamless user experience.
If you have any questions or need assistance with DeskFrame, feel free to reach out to John or Jane via email at [sribalaji2112@gmail.com](mailto:sribalaji2112@gmail.com) or [jayasri2112@gmail.com](mailto:sribalaji2112@gmail.com).
## Thank You for Visiting 🙏
Thank you for taking the time to visit and explore DeskFrame! We appreciate your interest in our project and hope that DeskFrame will be a valuable tool for your Python GUI development needs.
If you have any questions, feedback, or suggestions, please don't hesitate to reach out to us. We're here to support you in any way we can.
Happy coding with DeskFrame!
pypi-AgEIcHlwaS5vcmcCJDM3OGJhZGQzLThhZmItNGFmYi1iNTdiLWY1ODU2OWJjYjA1MgACKlszLCI2YTg1MjllMi1kNmRmLTQwODQtOGJkNS1mODBkYmFiNTg2YWQiXQAABiDKnsvmk3BlGFeZvZ08S8uxrqUPKKRaqqwelXOg2XWjnQ
Raw data
{
"_id": null,
"home_page": "https://github.com/SriBalaji2112/DeskFrame/",
"name": "deskframe",
"maintainer": null,
"docs_url": null,
"requires_python": null,
"maintainer_email": null,
"keywords": "GUI tkinter customtkinter ctk tk python application network api ui gui deskframe app desktop create gui",
"author": "BalajiSanthanam",
"author_email": "sribalaji2112@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/7f/67/7d18551781fa48eb5d4d6301524dbcced4160c71de5fd3a4dddb26cac5c2/deskframe-1.0.1.tar.gz",
"platform": null,
"description": "<h1 align=\"center\">\r\n <b>D E S K F R A M E</b>\r\n</h1>\r\n\r\n<p align=\"center\">\r\n DeskFrame is a Python library that simplifies the process of creating graphical user interfaces (GUIs) using XML for layout design and Python for backend logic.\r\n</p>\r\n\r\n<div align=\"center\">\r\n\r\n[![PyPI version](https://badge.fury.io/py/deskframe.svg)](https://badge.fury.io/py/deskframe) [![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/YourUsername/YourRepository/blob/main/LICENSE) ![Tkinter](https://img.shields.io/badge/Tkinter-latest_version-orange) ![CustomTkinter](https://img.shields.io/badge/CustomTkinter-latest_version-darkgreen)\r\n\r\n</div>\r\n\r\n## Introduction\r\n\r\nDeskFrame is a Python library that simplifies the process of converting XML code into Python Tkinter applications. This module allows developers to design Tkinter interfaces using XML, providing a dynamic live preview of the Tkinter application as you write XML code.\r\n\r\nThe development of Tkinter applications by merging XML with Python.This module not only supports a vast array of standard and custom Tkinter widgets but elevates your development experience through its dynamic live preview feature. \r\n\r\nAs you frame your front-end piece in XML,instantly witness the changes reflecting in the live preview window.\r\n\r\nThis application supports the toggling feature to enhance user experience. The generated Tkinter code can be easily converted into an executable file with the help of our user-friendly DeskFrame tool.\r\n\r\n## Features\r\n\r\n### 1. Wide Widget Support\r\n\r\nSupport for all standard Tkinter and custom Tkinter widgets. Refer to the [documentation](https://github.com/YourUsername/YourRepository/blob/main/docs/widgets.md) for details on available widgets and their usage.\r\n\r\n### 2. Live Preview\r\n\r\nOnce you run the project using `main.py`, all activities run dynamically, providing a simultaneous live preview. Any changes to the XML file are reflected immediately in the live preview window.\r\n\r\n### 3. Front in XML\r\n\r\nDesign the front-end of your Tkinter application using XML.\r\n\r\n### 4. Clean Separation\r\n\r\nMaintain a clean separation between the front end and back end for better code organization and readability.\r\n\r\n### 5. Customizable\r\n\r\nEasily customize and fine-tune the generated Tkinter code, including support for custom widgets and layouts.\r\n\r\n### 6. User-Friendly Project Structure\r\n\r\nUtilize `deskframe.exe` in the site package to create projects effortlessly. Run `deskframe.exe -startProject 'project_name'` in the command prompt. The project includes Python files for backend activities, XML files for layouts, and various resource folders for media, fonts, menus, and values.\r\n\r\n### 7. Easy Application Creation\r\n\r\nUse the provided `deskframe.exe` tool to streamline project setup, including creating new activities (`python setup.py -createActivity 'activity_name'`), running the DeskFrame server (`python setup.py -server run`), and more.\r\n\r\n### 8. Build Executable File\r\n\r\nCommand: `python setup.py -buildExe`\r\n\r\n## Installation\r\n#### You can install DeskFrame via pip:\r\nOpen a terminal or command prompt and run the following command:\r\n\r\n```commandline\r\npip install deskframe\r\n```\r\n\r\nThis will install DeskFrame and its dependencies on your system.\r\n\r\n## Usage\r\n\r\n### Create project:\r\nOnce DeskFrame is installed, you can create a new project by running the following command:\r\n\r\n```commandline\r\ndeskframe --startProject project_name\r\n```\r\n\r\nReplace `project_name` with the desired name of your project. This command will create a new directory with the specified project name, containing the necessary files and folders to start developing your DeskFrame application.\r\n\r\nIn developing desktop applications with DeskFrame, organizing your project effectively is key to maintaining clarity and scalability. Let's explore the typical file structure of a DeskFrame project, providing a solid foundation for building your applications efficiently.\r\n\r\nThis guide provides an overview of the typical file structure you'll encounter after creating a DeskFrame project.\r\n\r\n```\r\nproject_name/\r\n \u2502\r\n \u251c\u2500\u2500 python/\r\n \u2502 \u251c\u2500\u2500 MainActivity.py\r\n \u2502 \u2514\u2500\u2500 __init__.py\r\n \u2502\r\n \u251c\u2500\u2500 res/\r\n \u2502 \u251c\u2500\u2500 layout/\r\n \u2502 \u2502 \u2514\u2500\u2500 activity_main.xml\r\n \u2502 \u2502\r\n \u2502 \u251c\u2500\u2500 font/\r\n \u2502 \u2502 \u2514\u2500\u2500 fonts.ttf\r\n \u2502 \u2502\r\n \u2502 \u251c\u2500\u2500 drawable/\r\n \u2502 \u2502 \u251c\u2500\u2500 image1.png\r\n \u2502 \u2502 \u2514\u2500\u2500 image2.jpg\r\n \u2502 \u2502\r\n \u2502 \u251c\u2500\u2500 menu/\r\n \u2502 \u2502 \u2514\u2500\u2500 main_menu.xml\r\n \u2502 \u2502\r\n \u2502 \u2514\u2500\u2500 values/\r\n \u2502 \u251c\u2500\u2500 strings.py\r\n \u2502 \u2514\u2500\u2500 values.py\r\n \u2502\r\n \u251c\u2500\u2500 builder.py\r\n \u251c\u2500\u2500 Config.xml\r\n \u251c\u2500\u2500 main.py\r\n \u251c\u2500\u2500 setup.py\r\n \u2514\u2500\u2500 init.py\r\n```\r\n\r\n\r\n### Description of Each Component:\r\n\r\n- **python/**: Contains the backend logic of your application. Each activity in your application has its corresponding Python file (e.g., `MainActivity.py`, `SecondActivity.py`).\r\n\r\n- **res/**: Contains all the resources used in your application.\r\n\r\n - **layout/**: Contains XML files defining the UI layout of your activities.\r\n\r\n - **font/**: Contains font files (e.g., `.ttf`) used in your application.\r\n\r\n - **drawable/**: Contains image files (e.g., `.png`, `.jpg`) used in your application.\r\n\r\n - **menu/**: Contains XML files defining menus for your application.\r\n\r\n - **values/**: Contains configuration files (e.g., `strings.py`, `values.py`) holding constants and resource values.\r\n\r\n- **builder.py**: Script to build the executable file for your project.\r\n\r\n- **Config.xml**: Configuration file containing application settings and metadata.\r\n\r\n- **main.py**: Main execution starting file of your application.\r\n\r\n- **setup.py**: Script to create new activities and run the DeskFrame server.\r\n\r\n- **\\_\\_init\\_\\_.py**: Python package initialization file.\r\n\r\nThis structured file organization ensures clarity, maintainability, and ease of development in your DeskFrame projects.\r\n\r\n\r\n### XML script: `res\\layout\\activity_main.xml`\r\n\r\n```xml\r\n<?xml version=\"1.0\" encoding=\"UTF-8\" ?>\r\n<Layout>\r\n\t<TextView\r\n\t\ttext=\"Hello World\">\r\n\t\t<Push\r\n\t\t\texpand=\"True\"/>\r\n\t</TextView>\r\n</Layout>\r\n```\r\n\r\n### Python Script: `python\\MainActivity.py`\r\n\r\n```python\r\nimport os\r\nimport sys\r\ncurrent = os.path.dirname(os.path.realpath(__file__))\r\nparent = os.path.dirname(current)\r\nsys.path.append(parent)\r\nimport customtkinter as tk\r\nfrom deskframe.views.ViewBuilder import Builder\r\n\r\nclass MainActivity(tk.CTkFrame):\r\n def __init__(self, master=None, intent=None, **kwargs):\r\n super().__init__(master, **kwargs)\r\n self.intent = intent\r\n self.view = Builder(context=\"activity_main.xml\", _from=self)\r\n self.onCreate()\r\n\r\n def onCreate(self):\r\n # Global Variables Declaration\r\n pass\r\n\r\n # onClick Methods\r\n\r\n # Switch View -> auto created InBuild method, please don't modify\r\n def Intent(self, view):\r\n if self.intent:\r\n self.pack_forget() # Hide the current window\r\n self.intent(view) # Show the destination window\r\n```\r\n\r\n### Output :\r\nThis script displays a Tkinter window with the centered text \"Hello World.\"\r\n\r\n### Creating an Activity in the Project :\r\nTo add a new activity to your DeskFrame project, you can use the provided command-line interface. Follow the steps below:\r\n###### Command :\r\n```commandline\r\n~ cd project_directory\r\n~ python setup.py --createActivity 'activity_name'\r\n```\r\nAfter running the command, DeskFrame will create the necessary files for the new activity, including Python backend and XML layout files, inside the appropriate directories (`python/` and `res/layout/`, respectively).\r\n\r\nYou can now start customizing your new activity by adding functionality to the Python\r\nbackend (`python/'ActivityName'.py`) and designing the UI layout in the XML file (`res/layout/'activity_name'.xml`).\r\n\r\n### Run DeskFrame Live Server :\r\nTo live preview your DeskFrame project and make changes dynamically, you can run the DeskFrame live server using the provided command-line interface. Follow the instructions below:\r\n\r\n```commandline\r\n~ cd project_directory\r\n~ python setup.py --server run\r\n```\r\nThis command will launch the DeskFrame server, enabling live preview functionality. You can now make changes to your project files, such as Python scripts or XML layouts, and see the updates reflected immediately in the live preview.\r\n\r\nTo exit the live server, you can press `Ctrl + C` in the terminal or command prompt where the server is running.\r\n\r\n### Run without Live Server\r\nAlternatively, if you do not need live preview functionality and prefer to run your DeskFrame project without it, you can simply execute the main Python script (`main.py`) using the following command:\r\n\r\n```\r\n~ cd project_directory\r\n~ python main.py\r\n```\r\n\r\nBy following these steps, you can choose to either run the DeskFrame live server for dynamic previewing of your project or execute the main script directly for standard project execution.\r\n\r\n# Supported Widgets\r\nDeskFrame supports a wide range of widgets for building graphical user interfaces (GUIs) in Python applications. Below is a list of supported widgets along with links to their detailed documentation\r\n\r\nHere's a brief overview of each supported widget in DeskFrame, along with a simple description:\r\n\r\n```plaintext\r\n+-------------------------+---------------------------------------------------------------+\r\n| Name | Description |\r\n+-------------------------+---------------------------------------------------------------+\r\n| Frame | A container for organizing and grouping other widgets. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| ImageView | Displays images or icons in your application. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| TextView | Displays text in your application. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| Button | A clickable button that triggers actions. Supports various |\r\n| | attributes. Refer to the documentation for examples. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| CheckBox | A checkable box that allows the user to make a binary choice. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| WebCam | Placeholder for webcam-related functionality (customizable). |\r\n+-------------------------+---------------------------------------------------------------+\r\n| Entry | Single-line text entry field. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| VideoView | Displays video content in your application. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| ListBox | A list of selectable items. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| MenuButton | A button that opens a menu when clicked. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| Menu | A popup menu for providing options and commands. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| Separator | A visual separator used to organize layout. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| ToolBar | A toolbar for quick access to frequently used actions. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| RadioButton | A button that allows the user to choose one option from a set.|\r\n+-------------------------+---------------------------------------------------------------+\r\n| Scale | A slider that allows the user to select a value from a range. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| LabeledScale | A labeled slider for selecting a value from a range. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| Scrollbar | A scrollbar for navigating content. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| NoteBook | A container for multiple pages with tabs for navigation. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| SpinBox | An input field for selecting numeric values from a range. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| TreeView | A hierarchical way to display data in a tree-like structure. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| PanedFrame | A container with resizable panes for flexible layout. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| ComboBox | A combination of an entry and a dropdown list. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| OptionMenu | A dropdown menu for selecting from a list of options. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| ProgressBar | Visualizes the progression of an operation. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| ScrollableFrame | A frame with built-in scrolling capability. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| SegmentedButton | A set of buttons where only one can be selected at a time. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| Slider | Allows the user to select a value from a range using a slider.|\r\n+-------------------------+---------------------------------------------------------------+\r\n| Switch | A two-state toggle switch. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| TabView | Organizes content into tabs for easy navigation. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| TextArea | A multi-line text entry field. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| Calendar (DatePicker) | Allows the user to pick a date from a calendar. |\r\n+-------------------------+---------------------------------------------------------------+\r\n| TimePicker | Allows the user to pick a time from a clock interface. |\r\n+-------------------------+---------------------------------------------------------------+\r\n```\r\n\r\n\r\n## Contact\r\n\r\nIf you have any questions, suggestions, or feedback regarding DeskFrame, we'd love to hear from you! You can reach out to us via the following channels:\r\n\r\n- **Email**: [sribalaji2112@gmail.com](mailto:sribalaji2112@gmail.com)\r\n- **Twitter**: [@DeskFrame](https://twitter.com/DeskFrameHQ)\r\n- **LinkedIn**: [DeskFrame](https://www.linkedin.com/company/deskframe)\r\n\r\n## Reporting Issues\r\n\r\nIf you encounter any issues while using DeskFrame, or if you have suggestions for improvements, please don't hesitate to report them on our GitHub Issues page. Your feedback helps us identify and address any problems in DeskFrame, ensuring a better experience for all users.\r\n\r\n[Open a new issue](https://github.com/YourUsername/YourRepository/issues) on GitHub to report any bugs, request new features, or provide general feedback. We appreciate your contributions to improving DeskFrame!\r\n\r\n## Authors\r\n\r\n### Balaji Santhanam\r\n![Balaji](https://example.com/john_doe_photo.jpg)\r\n\r\nBalaji Santhanam is a software developer with expertise in Python and GUI development. He has contributed to the development of DeskFrame, focusing on widget implementation and user interface design.\r\n\r\n### Jayasri\r\n![Jayasri](https://example.com/jane_smith_photo.jpg)\r\n\r\nJayasri is a UI/UX designer with a passion for creating intuitive and visually appealing user interfaces. She has collaborated on the design and usability aspects of DeskFrame, ensuring a seamless user experience.\r\n\r\nIf you have any questions or need assistance with DeskFrame, feel free to reach out to John or Jane via email at [sribalaji2112@gmail.com](mailto:sribalaji2112@gmail.com) or [jayasri2112@gmail.com](mailto:sribalaji2112@gmail.com).\r\n\r\n## Thank You for Visiting \ud83d\ude4f\r\n\r\nThank you for taking the time to visit and explore DeskFrame! We appreciate your interest in our project and hope that DeskFrame will be a valuable tool for your Python GUI development needs.\r\n\r\nIf you have any questions, feedback, or suggestions, please don't hesitate to reach out to us. We're here to support you in any way we can.\r\n\r\nHappy coding with DeskFrame!\r\n\r\npypi-AgEIcHlwaS5vcmcCJDM3OGJhZGQzLThhZmItNGFmYi1iNTdiLWY1ODU2OWJjYjA1MgACKlszLCI2YTg1MjllMi1kNmRmLTQwODQtOGJkNS1mODBkYmFiNTg2YWQiXQAABiDKnsvmk3BlGFeZvZ08S8uxrqUPKKRaqqwelXOg2XWjnQ\r\n",
"bugtrack_url": null,
"license": "BSD 3-Clause License",
"summary": "DeskFrame is a Python library that simplifies the process of creating graphical user interfaces (GUIs) using XML for layout design and Python for backend logic.",
"version": "1.0.1",
"project_urls": {
"Homepage": "https://github.com/SriBalaji2112/DeskFrame/"
},
"split_keywords": [
"gui",
"tkinter",
"customtkinter",
"ctk",
"tk",
"python",
"application",
"network",
"api",
"ui",
"gui",
"deskframe",
"app",
"desktop",
"create",
"gui"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "c1a1c8b1887e2bf1a9af0f82dac69f600ac6d52585eb359eb32079ec249f50e1",
"md5": "f8e692e5e7e662e6021f4cf5e6d9462a",
"sha256": "60c9b2e43f1075fb09b760d02d5f36eefefabb5b62c91e6f7bb6beaa7c8787d8"
},
"downloads": -1,
"filename": "deskframe-1.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "f8e692e5e7e662e6021f4cf5e6d9462a",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 40751,
"upload_time": "2024-12-09T04:36:31",
"upload_time_iso_8601": "2024-12-09T04:36:31.724422Z",
"url": "https://files.pythonhosted.org/packages/c1/a1/c8b1887e2bf1a9af0f82dac69f600ac6d52585eb359eb32079ec249f50e1/deskframe-1.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "7f677d18551781fa48eb5d4d6301524dbcced4160c71de5fd3a4dddb26cac5c2",
"md5": "a5ea9b32cf83c787c582a3b473ed0a42",
"sha256": "d804116eaa1f9d3e3a0d36c544266f386851baa872e8947a81f53681cb02b2d0"
},
"downloads": -1,
"filename": "deskframe-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "a5ea9b32cf83c787c582a3b473ed0a42",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 44636,
"upload_time": "2024-12-09T04:36:33",
"upload_time_iso_8601": "2024-12-09T04:36:33.863224Z",
"url": "https://files.pythonhosted.org/packages/7f/67/7d18551781fa48eb5d4d6301524dbcced4160c71de5fd3a4dddb26cac5c2/deskframe-1.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-09 04:36:33",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "SriBalaji2112",
"github_project": "DeskFrame",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "deskframe"
}