Skip to content
This repository has been archived by the owner on Aug 28, 2024. It is now read-only.

Manu1ND/Mapaish-Chat

Repository files navigation

MAPAISH Chat Server

MAPAISH Chat Server is an instant messaging solution built using vanilla JS for frontend with PHP and MariaDB for backend. It allows users to seamlessly communicate with each other. The project should be designed to very user friendly to use, enabling even a novice person to use it.

Documentation

Documentation

Abstract

Teleconferencing or Chatting, is a method of using technology to bring people and ideas together despite geographical barriers. The technology has been available for years but the acceptance was quite recent. Our project is an example of a chat server(Mapaish). It is made up of 2 applications: the client application, which runs on the user’s Web Browsers and server application, which runs on PHP server. To start chatting, the client should register with our platform where they can do private and group chat. Security measures like SQL injection were taken care of while doing this project.

Introduction

Communication is a means for people to exchange messages. It has started since the beginning of human existence. Distant communication began as early as the 18 th century with the introduction of television, telegraph and then telephony. Interestingly enough, telephone communication stands out as the fastest growing technology, from fixed line to mobile wireless, from voice call to data transfer. The emergence of computer network and telecommunication technologies bears the same objective, that is to allow people to communicate. Chatting is a method of using technology to bring people and ideas together despite geographical barriers. The technology has been available for years but the acceptance was quite recent. We created MAPAISH , a chat server, that runs on any modern web browser and needs to be hosted on a PHP server. To start chatting, the user should register and login to our chat application where they can do group and private chatting.

Hardware Requirements:

● Personal Computer ● 128 MB minimum RAM Required ● Internet or LAN Connections

Software Requirement:

● Modern Browser ● PHP server ● Database Server

Design

The application follows a 3-tier architecture

1. Presentation layer (your PC, Tablet, Mobile, etc.)
2. Application layer (PHP server)
3. Database Server (MySQL, MariaD

image

Technology Stack

image

Use Cases

Use Cases (1)

Client:

The user needs to register on Mapaish. The user then needs to login to access the chatroom, where he can chat privately or in a group. The login and registration form validation is done using jQuery library for Javascript , PHP and Database . Duplicate usernames, and E-Mail IDs are validated against the database using AJAX and PHP. When the user logins, the user session is created to uniquely identify the user. The user can customise his profile with picture, status and display name. The client sends requests to the PHP server for sending messages or receiving new messages, which then checks the Database and sends the responses to the client.

Modules:

  1. Login/Register Validation (Login/Registration Page)

    1.1) Client side validation is done using jQuery and server side validation is done using AJAX, PHP and database.

  2. Left Pane (Chat Page)

    2.1) It shows the recent contacts you’ve sent messages to. 2.2) On the top left it shows the user the profile picture. 2.3) Chat Menu ■ For new Chat/Group 2.4) Hamburger Menu ■ Options to change user profile. 2.5) Search button to filter contacts.

  3. RightPane (Chat Page)

    3.1) It displays the main UI where the users can send and receive their messages. 3.2) Hamburger Menu (only for group chats) ■ Options to change group settings.

Database Schema:

The SQL file in the project needs to be imported in MySQL/MariaDB Database server.

image

Screenshots

Registration Tab:

image

Chat Room:

image

Hamburger Menu Button:

image

New Chat and New Group:

image image

Hamburger Menu Button for Group Chat:

image image

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published