How to start developing a custom GUI

I have an idea for a different GUI I’d like to design, on top of Qubes OS. Would something like this be possible?

You have a VM for running your GUI. Would I replace it’s internals with a different GUI application / API calls? Would/Could I use the API here, or do you have a different API? (Should I use both?). If possible, I’d like to keep the “right click - open in disposable vm”, and related functionality.

With building something like this, would I edit this repo here to build a custom iso?