Ehhh, Yea I've just built my own GUI framework (https://github.com/Wickslynx/RoofNut) using GLFW, and it was not easy. I used Nuklear to render the graphics as it is almost impossible to do it yourself. I would recommend to not start with building your own and use some already existing framework... I don't have anything to say really in that matter, do what you think is possible. I'm not that good at programming either.