Wrapped up user signup, login and logout functionality. Along the way I ended up refactoring and restructuring a lot of existing code to make it easier to extend and reuse existing code. As of now, the happy path works, but need to cover few corner cases.
I learnt a lot of auth flows in this journey and for better security I am using Paseto tokens instead of JWT. Next update would be completing this whole module before working on actual product.