Metadata-Version: 2.4
Name: modulan
Version: 0.2.0
Summary: A Python GUI framework with its own widgets, layouts, themes, and events
License-Expression: MIT
Keywords: modulan,gui,framework,desktop,pyside6,widgets
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development :: User Interfaces
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: PySide6>=6.6
Provides-Extra: dev
Requires-Dist: build>=1.2; extra == "dev"
Requires-Dist: twine>=5; extra == "dev"
Dynamic: license-file

&#x20;Modulan



Modulan

&#x20;is a Python GUI framework built on PySide6. It gives developers their own API for creating desktop applications with widgets, layouts, themes, and events.

&#x20;Installation





python -m pip install modulan





&#x20;Quick Start





import modulan as mlan



root = mlan.Root

root.title = "My Modulan App"

root.size = "800x500"

root.Theme = "midnight"



root.Mlan(text="Welcome to Modulan!")



root.Button(

&#x20;   text="Click me",

&#x20;   command=lambda: print("Modulan works!")

)



mlan.run()

```



Layouts



Modulan supports nested layout containers.





with root.Row() as row:

&#x20;   root.Button(text="First")

&#x20;   root.Button(text="Second")



with root.Column() as column:

&#x20;   root.Mlan(text="Inside a column")

&#x20;  root.Entry(placeholder="Enter text")





&#x20;Widgets



Available widgets include:



\- Labels

\- Buttons

\- Text inputs and text areas

\- Checkboxes and switches

\- Radio buttons

\- Sliders and dials

\- Progress bars

\- Dropdowns

\- Tables

\- Image display

\- Color pickers

\- Separators and spacers



&#x20;Themes



Choose a built-in theme:



\- dark

\- light

\- midnight



Example:





root.Theme = "dark"





&#x20;Developer Tools



Modulan also provides:



\- Button callbacks and widget events

\- Reading and updating widget values

\- Showing and hiding widgets

\- Enabling and disabling widgets

\- Message dialogs and confirmation dialogs

\- File open and save dialogs

\- Custom stylesheets



&#x20;Development



Install the local development version:





python -m pip install -e .





Run the tests:





python -m unittest discover -s tests -v





Build the package:





python -m build





&#x20;Project Status:



Modulan is under active development. Features and APIs may change as the framework is tested and improved.



&#x20;License



MIT License

