This repository contains both the Server(Java) & Android Client program for a lightweight instant messaging application inspired by WhatsApp. It uses MongoDB as a database. Server is implemented using the Java NIO package. Uses Thread Pools to handle requests of multiple clients simultaneously and avoids creating a new thread for every client connection.
- Registration through phone number
- Authentication through unique user token
- Multiple Threads
- Temporary storing of messages
- End-to-End encryption
- Time-Stamp
- Read/Receive receipt
- Group Messaging
- Media Support