Custom dialog that has functionality for programatically calling

I want to create a plugin for dialog that I can call from my js script and open it like we do in quasar this.$q.dialog({component:componentName})
I dont want to do it in any libraries so if you can help with some articles please let me know I want it completely customized