Skip to content

PyChat is a beginner-friendly project demonstrating how to build a chat application using Python, PyQt5 for the GUI, and MongoDB for data persistence. It's a great starting point for learning about network programming and GUI development. (Emphasizes learning and beginner-friendliness)

Notifications You must be signed in to change notification settings

JSlayer93/Chatter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 

Repository files navigation

PyChat: A Simple Python Chat Application

PyChat is a basic chat application built using Python, PyQt5 for the graphical user interface, and MongoDB for the backend database. It allows users to create accounts, join chat rooms, and exchange messages.

Features

  • User Authentication: Secure user registration and login with password hashing (using bcrypt).
  • Chat Rooms: Create and join chat rooms with optional passwords and user limits.
  • Messaging: Send and receive text messages within chat rooms.
  • Basic GUI: A simple and intuitive graphical user interface built with PyQt5.

Installation

Prerequisites

Installation Steps

  1. Clone the repository:
    git clone https://github.com/your-username/PyChat.git  # Replace with your repository URL
    cd PyChat
    
    
  2. Create a virtual environment:
    python3 -m venv .venv
    source .venv/bin/activate   # Activate the virtual environment (Linux/macOS)
    .venv\Scripts\activate     # Activate the virtual environment (Windows)
    
    
  3. Install dependencies
    pip install -r requirements.txt
    
    
  4. Set up environment variables
  • Create a file named .env in the project's root directory.
  • Add your MongoDB connection string to the .env file (replace <your_connection_string> with your actual MongoDB connection URI):
    DATABASE="mongodb://<your_connection_string>"
    
    
  1. Run the application

    python main.py

About

PyChat is a beginner-friendly project demonstrating how to build a chat application using Python, PyQt5 for the GUI, and MongoDB for data persistence. It's a great starting point for learning about network programming and GUI development. (Emphasizes learning and beginner-friendliness)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages