clspeter / next-messenger

Real-Time Messenger Clone: Next.js 13, React, Tailwind, Prisma, MongoDB, NextAuth, Pusher

Home Page:https://next-messenger-six.vercel.app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Next-Messenger

Real-Time Messenger Clone: Next.js 13, React, Tailwind, Prisma, MongoDB, NextAuth, Pusher

使用上述技術製作的Messenger Clone

29286945-ebdd-4333-912f-a949c7179075.webm
c9794d89-487f-4f4d-b7c2-4c2008b6db5c.webm

主要功能:

  • 使用Pusher進行即時訊息傳遞
  • 使用Tailwind做RWD切版和動畫過渡效果
  • 使用NextAuth進行憑證驗證
  • 整合Google,Github身份驗證
  • 使用Cloudinary CDN進行檔案和圖片上傳
  • 使用react-hook-form進行客戶端表單驗證和處理
  • 使用react-toast處理服務器錯誤
  • 已讀回傳
  • 在線/離線用戶狀態
  • 群聊和一對一消息
  • 傳圖片功能
  • 可設定個人名稱和頭像
  • 新增和管理聊天室和頻道

心得

messenger的 clone project,react-hook-form和react-toast算是簡單上手易用,可以替代手寫達到更高效開發。

clsx可以很好的依據state切換className

用了大量組件,學習到組件資料夾結構和特殊函式的參數傳遞。

較困難的是用到比較多後端技術,api邏輯還算有弄清楚,其中資料庫結構的部分還沒有摸的很懂,可能要一開始規畫專案的時候就要先設計好格式。

Credit

Thanks to Antonio Erdeljac who made a great great video guide for Messanger Clone.

License: MIT

About

Real-Time Messenger Clone: Next.js 13, React, Tailwind, Prisma, MongoDB, NextAuth, Pusher

https://next-messenger-six.vercel.app


Languages

Language:TypeScript 99.0%Language:JavaScript 0.9%Language:CSS 0.1%