Соц сеть для переписки
Реализуйте социальную сеть, в которой пользователи создают свои странички, добавляют друзей и ведут переписку в личку. Продумайте структуру базы данных для хранения пользователей, профилей, друзей и сообщений. Реализуйте регистрацию и авторизацию пользователей. Настройте серверную часть для работы с API. Все операции по чтению данных (вывод профилей, поиск) должны выполняться через SSR для индексации поисковиками. Все операции по записи (добавление друзей, отправка сообщений) - через AJAX-запросы без перезагрузки страницы. Скачать верстку для проекта.
Основные возможности проекта
- Регистрация и авторизация пользователей.
- Страница пользователя с полной информацией (SSR).
- Поиск людей по различным критериям (SSR).
- Добавление в друзья (AJAX).
- Личная переписка (AJAX).
Регистрация и авторизация
На сайте должна быть реализована регистрация и авторизация пользователей:
- Регистрация - форма с полями: логин, email, пароль, ФИО, страна, город.
- Авторизация - форма с полями: логин, пароль.
Страница пользователя
На странице пользователя должна отображаться следующая информация:
- ФИО.
- Аватарка (изображение).
- Страна и город.
- Образование.
- Увлечения и хобби.
- Любимая музыка.
- Любимые книги.
- Любимые фильмы.
Если страница просматривается другим пользователем, отображается кнопка "Добавить в друзья" (или "Удалить из друзей", если уже друзья). Страница генерируется на сервере для индексации поисковиками.
Страница поиска
Юзеры могут читать профили других людей. Для этого должна быть специальная страница для поиска людей по различным критериям:
- Поиск по ФИО или логину.
- Фильтр по стране и городу.
- Фильтр по возрасту (диапазон).
Результаты поиска выводятся в виде списка с пагинацией. Каждый результат - ссылка на страницу пользователя. Страница генерируется на сервере для индексации поисковиками.
Друзья
Юзеры могут добавлять других юзеров в друзья. После этого они могут осуществлять переписку в личку. Все операции выполняются через AJAX:
- Добавление в друзья - кнопка на странице пользователя.
- Удаление из друзей - кнопка на странице пользователя.
- Список друзей - отдельная страница с пагинацией.
Личные сообщения
Пользователи могут отправлять личные сообщения своим друзьям:
- Страница диалога с историей переписки.
- Форма для отправки нового сообщения (текстареа и кнопка "Отправить").
- Обновление сообщений без перезагрузки страницы (AJAX).
Взаимодействие с сервером
Гибридный подход:
- SSR - страницы пользователей, поиск, список друзей генерируются на сервере для индексации поисковиками.
- AJAX - все операции по записи (добавление/удаление друзей, отправка сообщений) выполняются через AJAX-запросы без перезагрузки страницы.
Дополнительные возможности
- Загрузка аватарки.
- Статус "онлайн/офлайн".
- Уведомления о новых сообщениях.