Farid-Mnf / Chat.IO

Instant messaging with one to one private chat application using Spring Boot

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Chat.io

A real-time instant one-to-one private chat web application using Java and Spring framework.

Demo Video Watch the video

I created the back-end using these technologies:

  • Spring Framework for dependency injection and inversion of control.
  • Spring Boot as a starter to easily integrate dependencies like Spring web, testing, and DATA JPA.
  • H2 in-memory database a light-weight db just to ease the development purpose.
  • WebSocket for bidirectional messaging.
  • Thymeleaf a template engine for rendering server side code on the client side.

While my main focus is on the back-end, I did the front-end using these technologies:

  • HTML for page layout.
  • CSS for some custom styling.
  • JavaScript for controlling page behaviour and functionality.
  • Bootstrap for some element components.
  • SockJS as my web socket client to publish and subscribe to message topics.
  • Font Awesome for adding some icons.

Current features:

  • Sign-up and Login functionality with some basic JS validation.
  • Chat box page for users to make private one-to-one communication.
  • Find Contacts functionality with async searchable list to search for any user and start instant messaging with.
  • My Contacts page for my current connected with users.
  • Real-time messaging; so users can receive and send messages asynchronously in real-time.
  • Update Profile Picture functionality to allow users to select a local image to change their profile picture.

Main Web Pages:

Main Page

1

Register Page

2

Login Page

3

Home, search input, suggested contacts Page

4

Searchable input result

5

Your contacts page

6

Chat box Page

7

About

Instant messaging with one to one private chat application using Spring Boot


Languages

Language:Java 59.6%Language:HTML 26.5%Language:CSS 11.8%Language:JavaScript 2.1%