Advanced console UI framework for Python with colors, layouts, animations, themes, developer tools and interactive menus
Project description
🎨 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 (NEW)
- 🎮 Flexible alias-based menu system
- ⚡ Terminal animations
- 🎭 Plug & Play Theme Engine
- 🛠 Developer Tools Panel
- 📦 Registry System
- 🎉 Welcome Banner System
- 🧠 Modular architecture
🆕 New in v0.2.1
🪟 Layout System Added
Build terminal layouts and panels easily.
from fullui import *
panel(
"Stats",
"HP:100\nMana:50"
)
columns(
[
"Inventory",
"Map",
"Player"
]
)
Included:
- panel()
- columns()
- split()
- dashboard()
- stack()
Perfect for:
- dashboards
- game HUDs
- terminal apps
- status panels
🎯 Perfect For
- Console games
- CLI tools
- Interactive terminal apps
- UI prototyping
- Terminal dashboards
📦 Installation
pip install fullui
✨ Verify Installation
python -c "import fullui; fullui.banner()"
🚀 Quick Start
from fullui import *
banner()
menu(
t="Main Menu",
op=[
"Play",
"Settings"
]
)
🧩 Recommended Import Style
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
choice = menu(
t="Game",
op=["Play","Settings"]
)
if choice == 1:
print("Play")
elif choice is None:
print("Exit")
🎨 Themes
from fullui import *
set_theme(NEON)
menu(
t="Styled Menu",
op=["Option A","Option B"]
)
Custom:
my_theme = create_theme(
titleColor=C.r,
inputColor=C.g
)
set_theme(my_theme)
🪟 Layout Examples
Panel
panel(
"Player",
"HP:100\nMana:50"
)
Columns
columns(
[
"Inventory",
"Map",
"Stats"
]
)
Dashboard
dashboard([
"CPU 40%",
"RAM 62%",
"ONLINE"
])
🎨 Colors
print(C.r+"Red"+S.rs)
print(S.bd+"Bold"+S.rs)
🌈 Gradients
print(rainbow("FULLUI"))
🎬 Animations
spinner()
glitch("ERROR")
progress_fill()
loading_dots()
🖥 UI Alias System
menu(
t="Menu",
st="Info",
op=["A","B"]
)
Aliases:
t, st, op, bs...
🔧 Utilities
clear()
pause()
🧩 Full Import
from fullui import *
Everything exposed through __all__.
🆕 Patch Notes — v0.2.1
Added
Layout System
New module:
fullui.layouts
Functions added:
- panel()
- columns()
- split()
- stack()
- dashboard()
Improvements
- Better architecture for future widgets
- Layout API designed for expansion
- Foundation for Data UI module
- Cleaner module organization
Internal
- Added layouts to public API
- Updated package exports
- Prepared roadmap for widgets
Fixed
- breakSymbol naming cleanup
- minor layout width handling
- documentation improvements
📄 License
MIT License
👨💻 Author
Leonardo Farid Porras Bendezú
aka LeonardX007
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fullui-0.2.1.tar.gz.
File metadata
- Download URL: fullui-0.2.1.tar.gz
- Upload date:
- Size: 18.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
04899829822367bbc55a8317703af15f6c236c32b1965d079747aed6b002274a
|
|
| MD5 |
2097a28bf5119e30157cf4346ba65822
|
|
| BLAKE2b-256 |
077ff68e1fdd04563ea29c7f9145259b48b506e62660da409baa02933c3bb976
|
File details
Details for the file fullui-0.2.1-py3-none-any.whl.
File metadata
- Download URL: fullui-0.2.1-py3-none-any.whl
- Upload date:
- Size: 17.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9dd5858a49c3bdf3d226fde20f7d75c17d520bdfbfe7b2cc28f16e5521de3fad
|
|
| MD5 |
9ca31e7cc53a98f9ef7d120c2b5d02b8
|
|
| BLAKE2b-256 |
15a31288746d3eb27711fda493d10b202da8c64e1423aa6a6053d0831938fcb9
|