SocialNet
Социальная платформа с профилями, лентой публикаций, друзьями, каналами, сообщениями и аудио- и видеозвонками.

О проекте
SocialNet — социальное веб-приложение для публикаций и общения в реальном времени. Профили, лента с вложениями и реакциями, поиск людей и заявки в друзья связаны с WebSocket-мессенджером, каналами и WebRTC-звонками. Next.js-клиент и сервер Hono организованы в pnpm-монорепозитории; данные хранятся в PostgreSQL через Drizzle ORM.
Задача
Объединить публичную ленту, социальные связи, личные сообщения и звонки в одном приложении, разделив клиентскую и серверную части.
Что реализовано
Профили с фото и обложками, публикации с файлами и реакциями.
Поиск пользователей, друзья и запросы на добавление.
WebSocket-мессенджер с редактированием сообщений, голосовыми и видеосообщениями.
Каналы и аудио- / видеозвонки на WebRTC с разграничением ролей.
Next.js, Hono, Drizzle ORM, PostgreSQL, WebSocket и WebRTC.
Технологии
Архитектура и роль технологий
- Next.js
- Структура веб-интерфейса, страницы и взаимодействие серверного и клиентского слоёв.
- Hono
- Серверные HTTP-маршруты и API-запросы.
- Drizzle ORM
- Типизированный доступ к реляционным данным.
- PostgreSQL
- Реляционное хранение связанных данных и транзакционная согласованность.
- WebSocket
- Двусторонний обмен событиями без постоянного опроса сервера.
- WebRTC
- Аудио- и видеосвязь в браузере.
Как это работает
- Войти через Google OAuth и оформить профиль.
- Опубликовать запись или найти пользователей и отправить запрос в друзья.
- Продолжить общение в личном чате или канале.
- Перейти к аудио- или видеозвонку.
Галерея проекта
Есть задача? Найдём решение.
Расскажите, что нужно сделать. Уточним детали и предложим следующий шаг.
Обсудить проект