Skip to content
This repository has been archived by the owner on Nov 24, 2022. It is now read-only.

Latest commit

 

History

History
62 lines (44 loc) · 2.32 KB

README.md

File metadata and controls

62 lines (44 loc) · 2.32 KB

Spring Angular Chat(STOMP)

Cover Image 1-1 instant messaging project designed to demonstrate WebSockets in a load-balanced environment. Users can register, login/logout, see a friendslist, private message all in realtime. WebSocket usages include user presence monitoring, notifications, and chat messages.

Technologies/Design Decisions

  • Backend: Kotlin with Spring Boot
  • Frontend: Angular 8
  • Message Broker: RabbitMQ (PubSub pattern for multi-server messaging)
  • Database: MongoDB
  • ORM: Spring Data
  • WebSocket messaging protocol: Stomp
  • WebSocket handler: Sock.js (with cross-browser fallbacks)
  • Security: Spring Security
  • Spring Controllers couple REST as well as WebSocket traffic
  • Solid Design Principals.

Features

  • OAUTH2 with Google and Facebook. Users can also register via email.
  • Multiple color themes available.
  • Private Friends list with blocking unwanted users.
  • Messages are persisted. Pwa is available provide desktop application features.
  • Offline message support and sync when user is online.
  • Easy add new friends via email. Like WhatsApp add via Phone number.
  • Chat support Images, Audio, Video, Gif's, Map Location. Multiple files with drop in feature.

Themes

Default Theme

Light Theme

Dark Theme

Light Theme

Light Theme

Light Theme

Screenshots

Any questions

If you have any questions, feel free to ask me:

Don't forget to follow me on twitter, github and Medium to be alerted of the new articles that I publish