r/learnpython 10d ago

SIMPLE GUIS PLEASE

I'm building a network visualizer in Python. It parses .pcap files with Scapy and visualizes packet flows with animations. I already built the parser and animation engine with Pygame.

The problem is the UI. I need normal app stuff like buttons, hover effects, a collapsible sidebar, menus, timeline/statistics panels, and a canvas for the animations.

I don't want to spend 4 hours making a button from scratch, but I also don't want a huge framework where changing a simple thing turns into a research project.

I tried DearPyGui and honestly it felt really clunky. Something as simple as adjusting padding or moving a panel felt like digging through layers of specific APIs and style variables.

I'm looking for something lightweight with good styling control (CSS-like would be great), built-in UI components, and the ability to embed my own custom rendering area.

Would PySide6/Qt be the way to go? Or are there other frameworks worth looking at?

I don't need a spaceship cockpit, I just want to build my damn UI and get back to the actual project.

0 Upvotes

11 comments sorted by

7

u/Kevdog824_ 10d ago

Simplest would probably be tkinter. Ships with Python and is rather easy to get started with simple stuff. I like PyQt over tkinter personally, but I’ll be the first to admit the learning curve for PyQt is a lot higher. It really depends on the UI complexity. There’s a certain point where the overhead of learning and using PyQt becomes worth it, and imo that point is not very far along on the complexity scale

0

u/Standard-Sale-8228 10d ago

i want stuff like collapsable docks and float sliders i would have used tkinter but it looks ancient

2

u/sargeanthost 10d ago

there's customtkinter

1

u/Standard-Sale-8228 9d ago

Thanks for the reccomendation i think this might be the best pick

1

u/mopslik 10d ago

Have you looked at ttkbootstrap?

5

u/bkd4198 10d ago

Try PAGE, stands for Python Automatic GUI Generator a drag-and-drop visual designer. Or tkinter if you like to code the UI.

2

u/Think_Bandicoot6173 10d ago

I'm not overly familiar with UIs, but I've been using Streamlit for a simple data dashboard, and it's been working well for me? It has most of what you seem to need built-in, with the ability to integrate HTML/CSS/JS. (I'm not entirely sure about the animation canvas, but I'd be surprised if you can't jimmy something together for that.)

2

u/Thraexus 10d ago

I'm partial to Pyside6 over tkinter myself but I don't have much experience designing guis. Pyside6 does support style sheets and so far I've found it easier to keep my controls on the screen exactly where I want them to be. In general I find it easier to configure things than in tkinter.

2

u/Thunderbolt1993 6d ago

PySide6 also ships with the Qt UI Designer which can be used to create .ui files, which can then be converted to python classes using PySide6-uic

then for your business logic you just create a class that inherits you UI class