Skip to content

Приложение Messenger для обмена сообщениями в режиме реального времени.

Notifications You must be signed in to change notification settings

SergeyKazarinov/messenger

Repository files navigation

Проект: Messenger

Описание:

Аналог приложения Messenger для обмена сообщениями в режиме реального времени.

Возможности приложения:

  • Авторизация пользователя через Google или GitHub
  • Обмен сообщениями в режиме реального времени
  • возможность отправки изображений
  • Статус о прочтении сообщения
  • Статус активности пользователя (Online/Offline)
  • Создание групповых чатов
  • Настройка профиля

Используемые технологии:

  • Адаптивная верстка для всех устройств
  • Для стилизации элементов страницы используется TailwindCSS
  • Авторизация пользователя реализована с помощью NextAuth
  • Загрузка файлов и изображений реализована при помощи Uploadcare
  • Для обмена сообщениями в режиме реального времени используется Pusher
  • Работа с формами реализована при помощи React-hook-form
  • Обработка ошибок сервера реализована при помощи React-hot-toast
  • Для работы с базой данных используется Prisma
  • Для Code Style используется ESLint совместно с Airbnb

Ссылка на сайт

Stacks:

  • TypeScript
  • Next.js 13
  • Prisma
  • MongoDB
  • Tailwind CSS
  • Eslint
  • Node v18.x

Быстрый старт


  1. Склонировать проект на свой компьютер
git clone https://github.com/SergeyKazarinov/messenger.git
  1. Перейти в папку с проектом и установить зависимости в проекте
npm install
  1. Чтобы запустить проект, необходимо добавить следующие переменные среды в файл .env
DATABASE_URL=
NEXTAUTH_SECRET=
GITHUB_ID=
GITHUB_SECRET=

GOOGLE_CLIENT_ID=
GOOGLE_CLIENT_SECRET=

NEXT_PUBLIC_PUSHER_APP_KEY=
PUSHER_APP_ID=
PUSHER_SECRET=
  1. Установить Prisma
npx prisma db push
  1. Запустить проект
npm run dev

About

Приложение Messenger для обмена сообщениями в режиме реального времени.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages