starting speech:
Good afternoon, respected panel members and my dear friends.
We hope you are doing well.
Today, we are here to present our project “Connectify”, which is a social
networking platform.
We sincerely thank you for giving us this opportunity.
This project is being carried out under the valuable guidance of P. Laxmi Narayana
Sir.
I am Harish, and these are my teammates – Dhanush and Tejashwanth.
introduction
Social networking applications have become a cornerstone of modern communication,
enabling people to stay connected, share experiences, and collaborate in real-time.
This project aims to design and develop a MERN stack-based social networking
application that is lightweight, secure, and scalable, while offering key features
such as real-time chat, audio/video calling, and media sharing. The system focuses
on providing a seamless and engaging communication platform, addressing the
shortcomings of current solutions and catering to the growing demand for efficient
digital interaction.
We will begin by discussing the problems in current social networking platforms,
and then present our solution – Connectify
“Most networking apps we use today come with certain problems.
They are often too complicated with unnecessary features.
Privacy is a big concern, as not all platforms ensure secure communication.
Users need to use different apps for different needs like chatting, posting, and
video calling.
(WhatsApp has become a very feature-heavy app. Along with core communication, it
now includes channels,communities, status, payments, ads, and so on. All these
features over load or increase data consumption, battery usage, and storage
requirements, especially on normal phones. Our approach is to keep the app
lightweight, with just the essential features – chat, audio/video calls, and media
sharing – so that it works smoothly even on low-end smartphones.)
problem statement
Despite their popularity, many existing platforms are either overloaded with
unnecessary features or lack essential tools like instant messaging, audio/video
calling, and secure media sharing,etc. These gaps create barriers to effective
communication. Therefore, there is a need for a lightweight, scalable, and secure
social networking application that ensures real-time engagement and an enhanced
user experience.
proposed solution
It focuses on essential real-time features such as instant messaging, secure media
sharing, and seamless audio/video calls.
We have adopted a user-centric design, ensuring that the interface is simple,
responsive, and free from unnecessary clutter.
Security is one of our top priorities — with end-to-end encryption, strong
authentication, and privacy controls to protect users’ data.
Finally, Its modular design allows future features to be integrated easily, and the
cloud-based infrastructure ensures it can handle large-scale user traffic
smoothly.”
technologies
“For the frontend, we are using React.js, a component-based library, to build a
dynamic and reusable user interface. We are styling our application with Tailwind
CSS, which allows us to design fast with a utility-first approach.
To manage server communication efficiently, we use TanStack Query for data
fetching, caching, and automatic background updates, which improves performance. We
also implement custom React hooks to organize reusable logic, making the codebase
cleaner and easier to maintain.
For security, we have Protected Routes, which help us control access to certain
pages based on user roles, such as normal users and admin.”
On the backend, we use Node.js as the runtime environment along with Express.js for
creating REST APIs. Our data is stored in MongoDB, a scalable NoSQL database.
MongoDB is document-based and schema-less, which makes it easier to store flexible
data like chat messages, media links, and user profiles. It scales horizontally for
high traffic, which is common in social apps.
For authentication, we use JWT(JSON Web Token) to secure login and signup flows.
Real-time chatting is powered by Socket.IO, while WebRTC enables peer-to-peer video
calls.
Socket.IO (Detailed Explanation)
“Socket.IO is a real-time communication library that works on top of WebSockets. It
helps us establish a continuous connection between the client and server. Unlike
traditional APIs that work on request–response, Socket.IO enables event-driven
communication, which means data can be pushed instantly without refreshing the
page.
In Connectify, we use Socket.IO for real-time chat messaging. For example, when one
user sends a message, it is immediately delivered to the other user through this
persistent socket connection. It also supports features like message delivery
status, typing indicators, and even handling offline messages.
This makes chatting fast, reliable, and truly real-time.”
WebRTC (Detailed Explanation)
“WebRTC (Web Real-Time Communication) is a peer-to-peer communication protocol
built for browsers and mobile apps. Unlike Socket.IO, which connects clients to a
server, WebRTC directly connects two users’ devices, reducing latency.
In Connectify, we use WebRTC for audio and video calling. When a call is initiated,
WebRTC handles:
Media capture (accessing microphone and camera),
Signaling (establishing connection with the help of Socket.IO as the signaling
channel),
Peer-to-peer connection (sending audio and video streams directly between users),
This allows us to provide high-quality, low-latency voice and video calls securely
inside the browser without needing third-party plugins.”
architecture
Client Layer (Browser / Mobile App)
Users access the app via React frontend.
All requests (login, posts, messages) are routed to backend APIs.
For live chat/calls, the client connects directly to Socket.IO & WebRTC.
Application Layer (Server)
The Node.js + Express server validates requests and processes business logic.
JWT authentication ensures only valid users can access protected routes.
Socket.IO manages chat events and acts as the signaling server for WebRTC.
Data Layer (Database & Media Storage)
MongoDB stores user profiles, messages, posts, and relationships
(followers/following).
Media files (images, videos) can be stored in cloud storage (e.g.,
Cloudinary/AWS S3).
Real-Time Communication Layer
Socket.IO → Used for instant messaging, typing indicators, delivery
acknowledgments.
WebRTC → Establishes direct peer-to-peer audio/video streams (after signaling
through Socket.IO).
future work
“As our project is still in its initial stage, these modules are planned as our
future work. We will begin by building the authentication pages such as login,
signup, and password reset with proper validation to ensure security. Next, we will
move on to profile management, allowing users to edit their details and manage
their media gallery. Once that is in place, we will focus on real-time
communication features, starting with the chat interface that supports message
bubbles, timestamps, and typing indicators.
After completing chat, we will integrate audio and video call functionality with
simple controls like mute, end, and video toggle, followed by media sharing options
for images, videos, and documents. Alongside all these modules, we will ensure the
platform is responsive across desktop, tablet, and mobile devices. Finally, we plan
to continuously improve the user interface with themes, icons, and smooth
transitions, making Connectify more engaging and user-friendly.
conclusion
“Our vision with Connectify is simple — to create a platform where communication
feels effortless, secure, and truly meaningful.
To conclude, Connectify is just our starting step toward building a complete social
networking solution. With time, we aim to enhance it further and add more advanced
features