This article on the "Death of UML" (https://garba.org/posts/2021/uml/) is mourning how agile killed any idea of analysis and design.
But there is nothing stopping you to come up with a good design. Agile simply killed the idea that one time analysis and design is enough ("big design upfront"). You should incorporate feedback to strengthen your analysis and improve your design regularly.
Do you need UML for this? Probably not, but if you find it useful, no one stops you.
Back in university, we've had a graph library (https://jgralab.github.io/) which allowed modeling the domain of interest as UML class diagrams and then provided a graph datastructure for it (either dynamically or by generating code). You could then build your app on top of that (usually by simply using the code rather than by extending the generated classes), you could query those graphs or transform them (e.g., in terms of graph pattern matching, model transformations, or bidirectional transformations).
One querying and transformation approach was/is FunnyQT (https://jgralab.github.io/funnyqt/) which I've developed in Clojure as part of my PhD. Great fun!
Ah, good old times. We've had a lot success with that approach, e.g., for software analysis an abstract syntax graphs in re-engineering projects.
That said, I haven't seen almost any UML since I'm in the industry and when I've seen a bit, it had nothing to do with the reality anymore.
The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!