Skip to content

blazethunderstorm/chat-application

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Real-Time Chat Application

A full-stack real-time chat application built with modern web technologies.

Technology Stack

  • Frontend: React.js, TailwindCSS, Daisy UI
  • Backend: Node.js, Express.js
  • Database: MongoDB
  • Real-time Communication: Socket.io
  • State Management: Zustand
  • Authentication: JWT (JSON Web Token)

Features

  • 🔐 Secure user authentication and authorization
  • 💬 Real-time messaging functionality
  • 🟢 Online user status indicators
  • 📱 Responsive design for all devices
  • ⚡ Efficient state management with Zustand
  • 🛡️ Comprehensive error handling (client and server)

Installation

Prerequisites

  • Node.js (v14 or higher)
  • MongoDB
  • Cloudinary account (for image uploads)

Setup

  1. Clone the repository

    git clone https://github.com/yourusername/chat-application.git
    cd chat-application
  2. Install dependencies

    # Install backend dependencies
    npm install
    
    # Install frontend dependencies
    cd frontend
    npm install

Development

  1. Start the backend server

    cd backend
    npm run dev
  2. Start the frontend development server

    cd frontend
    npm run dev

Production

  1. Build the application

    npm run build
  2. Start the production server

    npm start

## API Endpoints

- `POST /api/auth/signup` - Register a new user
- `POST /api/auth/login` - Authenticate a user
- `GET /api/users` - Get all users
- `GET /api/messages/:id` - Get messages for a specific chat
- `POST /api/messages` - Send a new message

About

chat-application

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages