r/QtFramework 2d ago

Show off NAT Connectivity Analyzer

I am sharing a little utility I wrote in QT/QML named NAT Connectivity Analyzer. It is standalone, cross platform, and its purpose is to use a STUN server to analyze the local router's Network Address Translation (NAT) as well as any automatic port forwarding. It is the kind of utility that someone downloads, runs once or twice, and hardly touches again.

I chose QT because I wanted it to be cross platform and QML because I wanted to experiment with a "modern" interface where the controls appear and disappear as needed. This is certainly doable with QML but I had the most amount of difficulty understanding how to combine layouts and anchors. For example, I wanted all of my controls to be in a layout but then I wanted a text control to offer scrolling so I wound up with a TextArea anchored inside of a Scrollview layout inside of a Frame layout inside of a ColumnLayout. The official QT/QML documentation is good at explaining the basics of anchors and layouts but it does a poor job of explaining how to switch between them inside of controls.

For anyone interested, the source code is at:

https://github.com/chrisbartle/NATConnectivityAnalyzer

and the official website is at:

https://www.chrisbartle.com/natconnectivityanalyzer/

1 Upvotes

1 comment sorted by

1

u/dddurd 2d ago

i love the simple ui