This repository contains a Chat Server implementation in Python, featuring both terminal and GUI-based versions. The chat server allows multiple clients to communicate with each other via a centralized server. The terminal implementation uses dynamic command-line features, while the GUI version provides an intuitive graphical interface.
-
Terminal Version:
- Interactive chat using the terminal.
- Enhanced display with colors and effects (using the
termcolor
library). - Fully documented with
pydoc
forserver.py
andclient.py
.
-
GUI Version:
- User-friendly graphical interface for chat.
- Simplified interactions for non-technical users.
-
Multi-Client Communication:
- Supports multiple clients connected to a single server.
├── gui_version # Contains the GUI-based chat implementation
│ ├── client_gui.py # GUI client-side code
│ ├── server_gui.py # GUI server-side code
│
├── terminal_version # Contains the terminal-based chat implementation
│ ├── client_terminal.py # Terminal client-side code
│ ├── server_terminal.py # Terminal server-side code
│ ├── pydoc_server.py # Pydoc documentation for server
│ ├── pydoc_client.py # Pydoc documentation for client
- Python 3.x
termcolor
library (for terminal version):pip install termcolor
git clone https://github.com/kevincogan/Chat_Server.git
cd Chat_Server
- Navigate to the
terminal_version
directory:cd terminal_version
- Start the server:
python server_terminal.py
- Start the client(s):
python client_terminal.py
- Navigate to the
gui_version
directory:cd gui_version
- Start the server:
python server_gui.py
- Start the client(s):
python client_gui.py
termcolor
: Provides text color and dynamic effects for terminal display. Install it with:pip install termcolor
- The
pydoc
documentation for the terminal version is separated from the main codebase. - Both versions are designed to work on local networks.
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch for your feature or fix.
- Commit your changes and push them to your fork.
- Open a pull request describing your changes.
This project is licensed under the MIT License. See the LICENSE file for details.
Experience seamless chat with this Python-based Chat Server implementation. Happy chatting!