Simple Twitter( 前、後端分離)

Avatar of 王重智.
Avatar of 王重智.

Simple Twitter( 前、後端分離)

backend Developer
Taipei City, Taiwan

圖(1) 基本功能

圖(2 ) 通知功能

圖(3) 公開聊天室

圖(4) 私人聊天室

專案簡述 :

此專案為迷你的社群平台,使用者可以追蹤且訂閱其他的使用者、發布推文、對推文進行回覆及按下喜歡,並設有設有公開聊天室、私人聊天室及訊息未讀通知功能。

由框架express、資料庫MySQL建立而成,套件sequelize 進行資料存取修改,JWT作為使用者認證,套件socket.io進行實作公、私聊天室及通知,最後雲端部署到 heroku 、AWS EC2上並使用Nginx 反向代理,由PM2 進行server管理。


專案功能

  • 使用者可建立個人帳戶
  • 使用者可發佈推文及回覆推文
  • 使用者可對推文按下喜歡
  • 使用者可追蹤、訂閱其它使用者
  • 使用者可收到訂閱者的發文通知
  • 當其他使用者對該使用者訂閱、追蹤、回覆推文、喜歡推文時,該使用者可收到通知
  • 使用者可進入公開聊天室聊天
  • 使用者可使用私訊功能,進行聊天

專案使用技術

  • 資料庫:MySQL / Sequelize js ORM
  • 框架:Node.js / Express.js
  • 驗證:JWT / passport.js
  • API:RESTful API
  • API 文件:Swagger
  • 單元測試:mocha + chai
  • 版本控管:git & git-flow, github
  • websocket:socket.io
  • 圖床 : Imgur
  • 雲端部署 : heroku + clearDB / AWS EC2 + RDS
  • 程序管理 : Pm2
  • 網路伺服器 : Nginx(反向代理)
  • SSL憑證 : cloudflare

個人負責項目

  • 建立專案大體架構(MVC)、
  • 建立Table與其關聯、種子資料、
  • 各項API、
  • 使用者認證(JWT),
  • 聊天室Sokcet事件與邏輯規劃及資料庫設計
  • 部署置AWS EC2及RDS
  • 建立SSL連線

測試帳號密碼:

迷你的社群平台,後端使用 expressJS 開發 RESTful API,使用者可以追蹤且訂閱其他的使用者、發布推文、對推文進行回覆及按下喜歡,並設有設有公開聊天室、私人聊天室及訊息未讀通知功能。
Avatar of the user.
Please login to comment.

Published: Oct 1st 2021
183
3
0

Tools

nginx
nginx
sequelize
Sequelize
express
Express
mocha
Mocha
heroku
Heroku
amazonwebservices
Amazon Web Services
git
Git
nodejs
Node.js

Share