Skip to content

ChatHaven is a seamless communication application designed to facilitate real-time messaging and collaboration. It includes features like direct messaging, group channels, user presence indicators, message enhancements, and unique team-developed features, ensuring an efficient and engaging user experience.

Notifications You must be signed in to change notification settings

Error-404-Project-W25/Error-404-SOEN341_Project_W25

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SOEN 341 Project - ChatHaven

Overview

ChatHaven is a seamless communication platform designed to facilitate group discussions, private messaging, and role-based user management. Built with scalability and user experience in mind, it enables users to collaborate effectively through structured text channels and direct messages.

Problem Statement

Effective and organized communication is crucial for team collaboration, yet many existing platforms either lack intuitive organization or require costly subscriptions. ChatHaven aims to provide an accessible, structured, and efficient solution for real-time messaging, ensuring seamless collaboration across various user groups.

Features

Core Functionality

  • Text Channels for Group Communication
    • Users can join topic-specific channels (e.g., "General," "Project Help," "Social").
    • Messages in a channel are visible to all users within that channel.
  • Direct Messaging (DM)
    • Users can privately message other individuals.
    • DMs are visible only to the participants involved.
  • Role-Based User Permissions
    • Admin Role: Can create/delete channels and moderate messages.
    • Member Role: Can send and view messages within assigned channels.

Technology Stack

  • Frontend: HTML, CSS, TypeScript
  • Backend: Node.js, Express.js
  • Database: MongoDB
  • Authentication: Firebase Authentication
  • Version Control: GitHub

Development Process

This project follows the Agile Scrum methodology with iterative development cycles called sprints.

  • Version Control & Collaboration: Managed using GitHub with structured repositories and issue tracking.
  • Sprint Deliverables: Includes planning documents, user stories, and development progress tracking.

Team Members

Name Student ID Role
Adam Purcell 40272334 Backend
Amanda Yuen 40031699 Frontend
Annie Nguyen Ly 40273050 Backend
Asley Kate Antonio 40240741 Backend
Tonny Zhao 40283194 Frontend
Ysa Francesca Sison 40287483 Frontend

Project Repository

GitHub Repository: <team_name-SOEN341_Project_W25>

Setup Instructions

  1. Clone the repository:
    git clone https://github.com/your-repository-link.git
  2. Navigate to the project directory:
    cd ChatHaven
  3. Install dependencies:
    npm install  # If using Node.js
  4. Run the application:
    npm start  # Start the development server

Contribution Guidelines

  • Follow the GitHub branching strategy (e.g., main, feature/branch-name).
  • Submit pull requests for review before merging.
  • Update the project documentation as needed.

License

This project is developed as part of the SOEN 341 course and is intended for educational purposes.

About

ChatHaven is a seamless communication application designed to facilitate real-time messaging and collaboration. It includes features like direct messaging, group channels, user presence indicators, message enhancements, and unique team-developed features, ensuring an efficient and engaging user experience.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 6