I usually write it myself with Django, Django REST Framework and JWTs alongside either Vue.js or Ember (and their with libraries).
Truth be told, I usually hate having to do it. That said I’ve never found a reasonable alternative.
There are usually differences in each set up that require customisation (for example magic links like you mentioned) and trying to integrate a platform like auth0 feels like it would be as much work.
I also don’t like the idea of the inevitable migration when I need something else it doesn’t offer, it goes out of business or gets acquired.
Truth be told, I usually hate having to do it. That said I’ve never found a reasonable alternative.
There are usually differences in each set up that require customisation (for example magic links like you mentioned) and trying to integrate a platform like auth0 feels like it would be as much work.
I also don’t like the idea of the inevitable migration when I need something else it doesn’t offer, it goes out of business or gets acquired.