The problem is, how do you abstract two very different APIs (Vulkan and OpenGL) without losing the benefits of either? This is neither a small nor simple task.
Particularly, I don’t think it’s a good idea to task inexperienced GSOC students with this, because that didn’t really pan out in the past and Vulkan is even harder to use than modern OpenGL.
I believe it would be better to investigate integration of an external abstraction layer like bgfx, which is already optimized for drawcall throughput on many legacy APIs.