Skip to content

greedypanda0/WhyGui

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

WhyGUI (IN DEVELOPMENT)

WhyGUI is a minimal, custom GUI framework inspired by JSX, XML, and templating engines — but with zero HTML or CSS.

Write simple .gui files using a declarative, tag-based syntax and render native desktop UIs using PySide6 (Qt). Perfect for designing rapid prototypes or dynamic UIs with full Python control.


🧩 Features

  • 📄 Custom .gui file format
  • 🧠 Smart parser that turns tags into component trees
  • 🎨 Inline styling via style={ key[value] ... }
  • ⚙️ Metadata with @title, @page, and @code blocks
  • 🪟 Built on PySide6 for native GUI rendering
  • 🔥 No web technologies involved — pure Python

🚀 Quick Start

1. Install dependencies

pip install PySide6
# App.gui

@title "home"
@page "/"
@code {
    print("hello from code block")
}

<column_block style={ background[#ffeeee] width[100%] height[100%] }>
    <row_block style={ background[#ddf] height[60] }>
        <text style={ text[My GUi] font_size[24] background[#cce] }></text>
    </row_block>
    <column_block style={ background[#fefefe] height[200] }>
        <text style={ text[Welcome to the test!] font_size[16] }></text>
    </column_block>
</column_block>
python main.py

Progress

  • parsing [done]
  • multiple page support [done]
  • css support [done]
  • code support
  • and more ...

its open to contributions!!!! or pls contribute lol

About

Declarative GUI framework for Python and PySide6 using a custom XML-inspired .gui syntax. Build native desktop applications without HTML or CSS.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages