Создать сервис-приложение, где любой человек сможет читать книги, вступать в книжные клубы, легко и удобно искать заметки автора клуба к книгам, голосовать за новые книги и обсуждать уже прочитанные.
Система состоит из следующих функциональных блоков:
- Регистрация, аутентификация и авторизация
- Функционал для автора/авторов книжного клуба
- Функционал для подписчика
- Функционал интеграции с Телеграмм, ВК, Youtube
Данный сервис предусматривает два типа пользователей - авторы клубов и обычные пользователи. Авторы клубов создают заметки к книгам, пишут к ним рецензии, создают для пользователей встречи и выкладывают дополнительные материалы. Обычные пользователи могут подписываться на клубы, и потреблять контент в зависимости от разных типов доступов
Любой человек регистрируется как обычный пользователь. У него есть несколько способов это сделать:
-
Через телеграм
Человек указывает свой telegram-id, ему пишет бот для прохождения верификации. Человек проходит верификацию в приложении, и бот задирает данные (указанные в профиле) и они вставляются в профиль пользователя.
Дальше человеку в профиле нужно будет обязательно указать возраст, о чём у него будет уведомление после прохождения всех этапов регистрации. -
Через VK
Регистрация будет через OAuth2, который предоставляет VK. Всё точно так же, пользователь проходит верификацию на стороне вк,
наше приложение забирает данные, какие нужны (Имя, возраст, email - если есть, телефон - если есть) -
Стандартно через mail.
Пользователь указывает mail, дальше ему на почту приходит ссылка для входа в приложение со специальными токенами. access и refresh. Через какое-то время, если пользователь не пользуется приложением, токены обнуляются и пользователю нужно пройти данную процедуру заново После входа в приложение пользователь может указать свой пароль для доступа в приложение
После данного этапа регистрации, пользователю будет предложено выбрать категории из которых он хочет получать рекомендации по книжным клубам
После завершения регистрации, пользователь оказывается на странице с подборкой клубов по его интересам.
Так же после завершения регистрации пользователь сможет перейти в личный кабинет и сможет указать следующие параметры:
- Дата рождения (обязательно)
- Почта, если не указана (обязательно)
- telegram-id, если вход был выполнен не через telegram (опционально)
Вход в систему так же осуществляется с помощью 3-х способов, указанных в разделе о регистрации
-
Через telegram и telegram-id
Пользователь указывает свой телеграм-id, бот отправляет пользователю код подтверждения, пользователь вводит его в приложении и авторизуется
-
Через vk oauth
-
Через почту
Тут есть два варианта:
- на почту отправляется письмо со ссылкой, при переходе по которой пользователь сможет войти в приложение
- Связка почта+пароль. Пользователь может войти, введя пароль, который указан в его личном кабинете
...