Metadata-Version: 2.4
Name: fullui
Version: 0.2.4
Summary: Advanced console UI framework for Python with colors, layouts, animations, themes, developer tools and interactive menus
Author-email: Leonardo Farid Porras Bendezu <porritasbendezu@gmail.com>
Maintainer-email: Leonardo Farid Porras Bendezu <porritasbendezu@gmail.com>
License: MIT
Project-URL: Homepage, https://github.com/porritasbendezu-lang/fullui
Project-URL: Repository, https://github.com/porritasbendezu-lang/fullui
Project-URL: Issues, https://github.com/porritasbendezu-lang/fullui/issues
Project-URL: Documentation, https://github.com/porritasbendezu-lang/fullui#readme
Project-URL: Changelog, https://github.com/porritasbendezu-lang/fullui/releases
Keywords: cli,ui,console,terminal,ansi,colors,menus,books,quizzes,tui,framework,animations,themes,layouts,panels,dashboard,widgets,ascii-layouts,developer-tools,terminal-games,interactive-cli
Classifier: Development Status :: 4 - Beta
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: End Users/Desktop
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: User Interfaces
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Terminals
Requires-Python: >=3.8
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: colorama>=0.4.6
Provides-Extra: dev
Requires-Dist: pytest>=8; extra == "dev"
Requires-Dist: build>=1.2; extra == "dev"
Requires-Dist: twine>=5; extra == "dev"
Requires-Dist: ruff>=0.5; extra == "dev"
Provides-Extra: docs
Requires-Dist: mkdocs; extra == "docs"
Requires-Dist: mkdocs-material; extra == "docs"
Dynamic: license-file

# 🎨 FULLUI --- Console UI System

> Build beautiful, interactive terminal apps --- fast.

FULLUI is a powerful and lightweight **console UI framework for
Python**, designed to transform boring CLI programs into visually rich
experiences.

------------------------------------------------------------------------

# ✨ Features

-   🎨 ANSI + RGB color system
-   🌈 Advanced gradients
-   ✨ Text styling system
-   🧱 Decorative boxes
-   📝 Layout System
-   🎮 Flexible alias-based system
-   ⚡ Terminal animations
-   🎭 Plug & Play Theme Engine
-   🛠 Developer Tools Panel
-   📦 Modular architecture
-   ✅ 100% editable interfaces 

------------------------------------------------------------------------

# 🆕 New in v0.2.4

## Improvements & Refinements

-   Fixed some problems
-   Functions arranged in scripts
-   More flexible custom color gradients
-   Internal optimizations
-   Functions implemented to create books and quizzes

------------------------------------------------------------------------

# 🎯 Perfect For

-   Console games
-   CLI tools
-   Interactive terminal apps
-   UI prototyping
-   Terminal dashboards

------------------------------------------------------------------------

# 📦 Installation

``` bash
pip install fullui
```

------------------------------------------------------------------------

## ✨ Verify Installation

``` bash
python -c "import fullui; fullui.banner()"
```

------------------------------------------------------------------------

# 🚀 Quick Start

``` python
from fullui import *

banner()

menu(
    t="Main Menu",
    op=[
        "Play",
        "Settings"
    ]
)
```

------------------------------------------------------------------------

# 🧩 Recommended Import Style

``` python
from fullui.colors import C,S
from fullui.ui import menu
from fullui.layouts import panel

panel(
   "Profile",
   "Level 12"
)

choice = menu(
   t="Menu",
   op=["Start","Exit"]
)
```

------------------------------------------------------------------------

# 🧠 Menu Behavior

-   Loops until valid input
-   Returns int
-   Invalid input handled automatically
-   Returns None on exit

``` python
choice = menu(
    t="Game",
    op=["Play","Settings"]
)

if choice == 1:
    print("Play")
elif choice is None:
    print("Exit")
```

------------------------------------------------------------------------

# 🧠 Book Behavior

-   Pages interactive for commands
-   Long texts
-   Layout system

``` python
choice = book(
    pages = [
        "TEXT1"
        "TEXT2"
        "TEXT3"
    ]
    width= 60 
)
```

------------------------------------------------------------------------

# 🧠 Quiz Behavior

-   Multiples uestions
-   Correct answer system
-   Result layout

``` python
quiz(
    t="QUIZ",
    
    qs=[
        {
            "question": "¿...?",
            "options": ["A", "B", "C"],
            "correct": 2
        },
        {
            "question": "¿?",
            "options": ["1", "2", "3"],
            "correct": 2
        },
        {
            "question": "¿?",
            "options": ["@", "#", "&"],
            "correct": 1
        }
    ],

    twn="¡Wonderfull!",
    tf="Fail",
    tmid="no bad"
)
```

------------------------------------------------------------------------

# 🎨 Themes

``` python
from fullui import *

set_theme(NEON)

menu(
 t="Styled Menu",
 op=["Option A","Option B"]
)
```

Custom:

``` python
my_theme = create_theme(
    titleColor=C.r,
    inputColor=C.g
)

set_theme(my_theme)
```

------------------------------------------------------------------------

# 📝 Layout System

## Panel

``` python
panel(
 "Player",
 "HP:100\nMana:50"
)
```

## Columns

``` python
columns(
 [
   "Inventory",
   "Map",
   "Stats"
 ]
)
```

## Dashboard

``` python
dashboard([
 "CPU 40%",
 "RAM 62%",
 "ONLINE"
])
```

------------------------------------------------------------------------

# 🎨 Colors

``` python
print(C.r+"Red"+S.rs)
print(S.bd+"Bold"+S.rs)
```

------------------------------------------------------------------------

# 🌈 Gradients

``` python
print(rainbow("FULLUI"))
```

------------------------------------------------------------------------

# 🎬 Animations

``` python
spinner()
glitch("ERROR")
progress_fill()
loading_dots()
```

------------------------------------------------------------------------

# 🖥 UI Alias System

``` python
menu(
 t="Menu",
 st="Info",
 op=["A","B"]
)
```

Aliases:

t, st, op, bs...

------------------------------------------------------------------------

# 🔧 Utilities

``` python
line_break # is "\n"
lb = line_break

p() #Print
clear() #Clear Console
pause() #Input pause
```

------------------------------------------------------------------------

# 🧩 Full Import

``` python
from fullui import *
```

Everything exposed through `__all__`.

------------------------------------------------------------------------

# 📄 License

MIT License

------------------------------------------------------------------------

# 👨‍💻 Author

**Leonardo Farid Porras Bendezú**\
aka **LeonardX007**
