Есть приложение на React. Серверная часть - Node js (использовал passport js для авторизации).
Есть две логики:
1) Авторизация через кнопку "Google Login"
2) Регистрация через форму по почте + паролю с кодом верификации на почту и вход в систему через эти же данные
P.S. Данные пользователя храню в MongoDB. Приложение разрабатываю локально пока.
Работает, но сделано криво (критику принимаю в любом количестве :) ).
Хочу сделать следующее:
1) Чтобы все файлы компонентов, отвечающих за регистрацию/авторизацию были корректно разделены (потому что сейчас чутка намешано в файлах).
2) Улучшить безопасность хранения токена, если нужно/можно как-то сделать. Принимаю рекомендации, как лучше и как вообще это реализуют правильно.
3) Восстановление пароля (сейчас этого нет, нужно, чтобы было).
4) Чтобы был правильно сделаный компонент на клиентской части, который проверяет авторизацию в приложении и извлекает из базы статус пользователя (бесплатный аккаунт или платный/хочу, чтобы в зависимости от уровня акаунта я мог управлять на клиентской части, что отдавать из контента, а что нет - это можно пока просто реализовать как-то примитивно, я потом уже сам буду разбираться).
Буду рад полезным советам, как правильно отдать файлы и куда, чтобы человек смог начать работать :)
На все вопросы отвечу, разумеется. Мог что-то упустить, но надеюсь, задачу описал в общих чертах.
Хотелось бы в 4000 грн уложиться.