Recently I had to build a feature that let users securely update their passwords via email. Our tech stack was Node/Express on the backend and we used JWTs to manage tokens and authentication. This proved to be both easier and harder than I expected.
Blog post: https://ahrjarrett.com/posts/2019-02-...
Source code: https://github.com/Lambda-School-Labs...