Skip to content

This is a group project from group "ut0r1d" for course CSC207.

Notifications You must be signed in to change notification settings

QianfengWen/ChatterBox-Pro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

95 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ChatterBox Pro: Enhanced Chatting Experience with Weather Insights & Humor API

Introduction

Welcome to ChatterBox Pro, a state-of-the-art online chatting platform developed by team ut0r1d. We have four members: Qianfeng Wen@https://github.com/QianfengWen, Huiwei Pan@https://github.com/helenpan593, Taowen Qian@https://github.com/egoist-hozumi, Ruohan Ren@https://github.com/AmberR-pua. This system, crafted meticulously in Java, integrates the best practices of Clean Architecture and SOLID principles, ensuring a robust and scalable solution. ChatterBox Pro stands out by not just offering a seamless chatting experience but also enriching user interaction with real-time weather updates and a touch of humor through integrated APIs.

Features

  • Real-Time Chatting: Engage in dynamic conversations with a user-friendly interface.
  • Weather API Integration: Get current weather information for any city.
  • Joke Generator: Lighten the mood with randomly generated jokes.
  • MongoDB Backend: Reliable and efficient data management for user profiles, chat rooms, and message history.

System Architecture

ChatterBox Pro is built on a solid foundation of Clean Architecture and SOLID principles, ensuring separation of concerns and high maintainability. The system's architecture is designed to be modular, allowing for easy integration of additional features in the future.

Core Components:

  • User Management: Handles user authentication and profile management.
  • Chat Engine: The backbone of the platform, facilitating real-time messaging.
  • API Integrations:
    • Weather API: Provides live weather data.
    • Joke API: Sources a variety of jokes.

Installation

Prerequisites

  • Java JDK 11 or higher
  • MongoDB installed and running
  • Able to run Maven projects in IDE.

Steps

  1. Clone the repository
  2. Find pom.xml, right click it and set it to a Maven project, then right click it again and click reload project in the Maven option.
  3. Navigate to the project directory: src/main/java/chattingSystem/app/main.java
  4. Compile the project: Compile main.java
  5. Run the application: Run main.java

Usage

If you haven't have an account, please press the sign up button and create an account with a unique username and password. Then sign in with your account. After successful login, users will enter the chatroom view. Here, you can:

  • Start chatting with other users.
  • Use the Weather button to check the weather in a specified city.
  • Click on the Joke button to receive a random joke.

Contributions

This project is a collaborative effort of Qianfeng Wen, Huiwei Pan, Taowen Qian, Ruohan Ren.

License

ChatterBox Pro is open sources, which allows for personal and commercial use, modification, distribution, and private use.

About

This is a group project from group "ut0r1d" for course CSC207.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •