Webchat

screenshot of Webchat
express
vue

:speaker: Websocket project based on vue(基于vue2.0的实时聊天项目)

Overview:

The webchat project is a chat application that offers features such as registration and login, real-time chat, viewing message history, multiple chat rooms, integration with a chatbot, sending images, links, and emojis, image preview, unread message notifications, automatic reconnection, viewing friend profiles, adding friends, one-on-one chat, searching friends, and recommended friends. The application is currently undergoing continuous refactoring for version 3.0, with version 2.2.0 being the stable branch for reference. The project utilizes a tech stack of Vue.js, Vue Router, Vuex for the frontend, Node.js, Express, MongoDB for the backend, and WebSocket for communication.

Features:

  • Registration and Login functionality
  • Real-time chat
  • Viewing message history
  • Multiple chat rooms
  • Integration with chatbot
  • Image, link, and emoji sending
  • Image preview
  • Unread message notifications
  • Automatic reconnection
  • Viewing friend profiles
  • Adding friends
  • One-on-one chat
  • Searching friends
  • Recommended friends

Development Environment Setup:

  1. Ensure MongoDB, Node.js (8.5.0+), and Npm (5.3.0+) are installed.
  2. Clone the repository from the stable branch: git clone https://github.com/hua1995116/webchat/tree/v2.2.0
  3. Start the client: npm run client
  4. Start the server: npm run server

Production Environment Setup:

  1. Ensure Redis, MongoDB, Node.js (8.5.0+), and Npm (5.3.0+) are installed.
  2. Follow the steps for the development environment setup mentioned above.

Summary:

The webchat project is a feature-rich chat application that provides registration, real-time chat, multiple chat rooms, chatbot integration, and various other functionalities. It is powered by Vue.js for the frontend, Node.js for the backend, and utilizes WebSocket for communication. Users can interact via one-on-one chat, view message history, send images and emojis, and receive automatic notifications for unread messages. With a stable version available for reference and ongoing refactoring for the next release, the webchat project offers a comprehensive chat experience for users.

express
Express

Express.js is a simple Node.js framework for single, multi-page, and hybrid web applications.

vue
Vue

Vue.js is a lightweight and flexible JavaScript framework that allows developers to easily build dynamic and reactive user interfaces. Its intuitive syntax, modular architecture, and focus on performance make it a popular choice for modern web development.