Skip to content

belenyb/chatapp_frontend

Repository files navigation

Chat App

This Flutter chat app is a real-time messaging application that allows users to engage in seamless conversations. The app is built using Flutter for the front end, and it communicates with a Node.js backend server that utilizes Express, MongoDB for data storage, and sockets for real-time communication.

Login screen

Frontend Features

Login and Signup Pages

The app includes dedicated pages for user authentication, allowing users to log in or sign up to access the chat functionality.

Login screen

Signup screen

App bar

This widget includes two main actions: a signout button and an online status icon, which represents the socket server's status.

Users Page

A user list page displays all users along with their online status. Users can easily identify who is online and initiate chats.

Users screen

Chat Page

The chat page provides a user-friendly interface for users to engage in real-time conversations. The chat history between two users is displayed, and new messages are instantly updated.

Chat screen

Frontend dependencies

provider

State management is handled efficiently using the Provider package, ensuring a seamless and reactive user interface.

http

The HTTP package is used to make secure and reliable network requests between the Flutter app and the Node.js backend server.

flutter_secure_storage

User authentication details are securely stored using the flutter_secure_storage package, ensuring the safety of sensitive information.

socket_io_client

Real-time communication is achieved using the Socket.io client package, enabling instant message updates and notifications in the chat.

Backend features

To check out this repo, click here.

Real-time Messaging

Users can send and receive messages in real-time, providing a smooth and interactive chat experience.

User Authentication with JWT

Secure user authentication is implemented using JSON Web Tokens (JWT), ensuring a safe and personalized messaging experience.

MongoDB Integration

Messages and user data are stored in a MongoDB database. MongoDB Compass, a graphical user interface, can be used for easy database management. Additionally, MongoDB Atlas, a cloud-based database service, offers a scalable and reliable solution for data storage.

Socket.io

Real-time communication is achieved through Socket.io, enabling instant message updates and notifications.

About

A full-stack chat app

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published