Unicorn is a scriptable CPU emulator. What happens though when a program uses a system call? Qiling tries to fully emulate what the host (windows, linux, etc) should do. Emulating the systems an OS provides is not trivial. An OS provides networking, filesystem, loading a binary(ELF, PE, MachO) into memory, etc.
Using QEMU with full system emulation can do some of this, but you don't get the scriptable control and deep analysis capabilities of Unicorn.
angr, from what I gather, can be useful for targeting specific sections of code. If you've reversed a binary enough to know where to target, this is useful.
For example, code such as as parsers which are typically complex and vulnerable or finding a specific input to reach a desired location (i.e. ctf challenges).
The problem qiling solves is that applications don't run in a vacuum, they are highly dependent on the OS they run on. Emulating each OS allows for dynamic analysis not possible with other frameworks. Some tools like Corellium provide great system emulation, but qiling has much better potential for analysis purposes.
visual studio code is pretty good these days when you get the right extensions. I've setup my projects to be debugged with gdb with vscode as the GUI. My build system also generate a compile_commands.json to feed to clangd https://marketplace.visualstudio.com/items?itemName=llvm-vs-...
Another good project that people love to hate is eclipse, if you want a GDB powered GUI, its always worth a shot.
Using QEMU with full system emulation can do some of this, but you don't get the scriptable control and deep analysis capabilities of Unicorn.
angr, from what I gather, can be useful for targeting specific sections of code. If you've reversed a binary enough to know where to target, this is useful. For example, code such as as parsers which are typically complex and vulnerable or finding a specific input to reach a desired location (i.e. ctf challenges).
The problem qiling solves is that applications don't run in a vacuum, they are highly dependent on the OS they run on. Emulating each OS allows for dynamic analysis not possible with other frameworks. Some tools like Corellium provide great system emulation, but qiling has much better potential for analysis purposes.
The slides in the 'News' section of the page do good job of explaining in detail. https://www.qiling.io/docs/Qiling-NullCon2020.pdf