JS это язык программирования. На его полноценное изучение уйдет намного больше времени, чем обучение верстки и создания собственного сборщика проектов ... Так что начать с основ весьма логично
Еще вопрос у меня в бд должны будут храниться персональные данные пользователей, согласно требованиям Роскомнадзора, я не могу хранить эти данные на серверах за пределами территории России. Получается нужно будет арендовать VPS на сервисе, сервера, которого физически находятся на территории РФ. Вы можете посоветовать, какое нибудь решение достойное?
Раньше я думал арендовать пару ubuntu серверов на сервисе digitalocean, поставить туда необходимое ПО, все проблемы решились один махом. Но теперь...
По клиентской части
У меня есть стартовая страница (для гостей) ограниченный функционал, в основном ознакомление с проектом и просмотр различных предложений.
Есть главная для пользователей прошедших аутентификацию, там полный функционал, приватная часть клиента.
Есть страница для администратора и работников приложения, там происходит управление веб приложение, статистика и так далее.
Ключевой вопрос:
Все эти три разные страницы реализовывать в одном проекте Angular?
Я дипломник без опыта работы, маленький город, спросить ни у кого не могу)
Robur
Спасибо за ответ. Теперь некоторые вопросы отпали.
Мне порекомендовали рассмотреть сервис Auth0. Я в нем попробовал разобраться, много сторонних провайдеров, но вовремя аутентификации (даже локальной) пользователя будет перенаправлять на их сервис. Изменить верстку их формы можно, но такой редирект меня бы оттолкнул, как пользователя.
Passport.js посмотрел, хорошая документация, огромное количество сторонних провайдеров. Буду его обязательно использовать.
По поводу схемы:
local { email, login, password }, google { email, id, token ... }. Пользователь прошел аутентификацию через учетную запись google, при добавлении нового пользователя в бд, продублировать полученный email в локальную учетную запись, а после дать возможность пользователю в настройках профиля добавить пароль?
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.