Web-based Group & Individual Chat App

Job ID: 38522143

Budget: ₹600 – ₹1,500 INR

Objective: Develop a real-time chat application that supports both group and individual messaging. The application will be built using Azure Functions with .NET 8 and Angular 18. The architecture will exclude the use of Azure SignalR service, instead relying on custom-built messaging infrastructure using the Azure SDK.

Key Features:

User Authentication:

Implement secure user authentication and authorization using Azure Active Directory or another suitable authentication service.
Real-Time Messaging:

Enable real-time messaging between users in both one-on-one and group settings. Messages should be delivered instantly without relying on Azure SignalR.
Design a custom messaging protocol using Azure SDK to handle real-time message delivery and synchronization.
Message History:

Store and retrieve chat history for both individual and group conversations using a scalable database solution (e.g., Azure Cosmos DB, Azure SQL).
Implement efficient querying to retrieve message history on-demand.
User and Group Management:

Allow users to create, join, and leave chat groups. Manage user roles and permissions within groups.
Support for user presence indicators (online/offline status) and typing indicators in chat.
Notification System:

Implement a notification system to alert users of new messages when they are not actively using the application.
Utilize Azure Functions to send push notifications or emails as needed.
Scalability:

Design the application to scale efficiently with the number of users and messages, leveraging Azure Functions for serverless scaling.
Ensure the application can handle high concurrency and large message volumes.
Security:

Implement end-to-end encryption for messages to ensure data privacy.
Secure API endpoints using proper authentication and authorization mechanisms.
User Interface:

Build a responsive and intuitive user interface using Angular 18. Ensure compatibility with both desktop and mobile devices.
Provide features like message search, user tagging, and media sharing within the chat interface.
Technology Stack:

Frontend: Angular 18
Backend: Azure Functions (.NET 8)
Database: Azure Cosmos DB / Azure SQL
Authentication: Azure Active Directory / Custom solution
Messaging Protocol: Custom-built using Azure SDK
Deployment: Azure (App Services, Storage, etc.)
Milestones:

Project Setup and Architecture Design
User Authentication and Authorization
Real-Time Messaging Protocol Development
Chat Interface Development
Group Management and User Presence Features
Notification System Implementation
Security and Data Encryption
Testing, Optimization, and Deployment
This project will deliver a robust, scalable, and secure chat application, capable of supporting real-time communication for individual and group users without relying on Azure SignalR.