Chat In Terminal - Chat-App in python

Overview

Chat In Terminal

Hello all. ๐Ÿ˜‰ Sockets and servers are vey important for connection and importantly chatting with others. ๐Ÿ˜‚ ๐Ÿ˜ I have thought of making a python script which will amek connection and eventually allow us to chat.

(DISCLAIMER - This python script runs only on localhost. If you want to make a connection with other devices then you should check the code of the server.py file and use network library in the client.py file) ๐Ÿ™ƒ

About

So, the thing that is done with this script is that, it starts a server and with the help of threading maintains many clients. It is like chatting in the terminal. You can join the chat by starting the client.py file.

Getting Started ๐Ÿ˜Ž ๐Ÿ˜Ž

Working with it is very simple.

  • There shouble be a host means the head of the chat
  • The host should run the server.py file and note the password given by it.
  • The host need to start another terminal and start client.py file and enter with name host ๐Ÿ‘ฉโ€๐Ÿ’ป ๐Ÿ‘ฉโ€๐Ÿ’ป
  • He/She needs to give the correct password as given by the server to start the chat. ๐Ÿ”
  • Anyone cannot join the chat unless host has joined ๐Ÿ‘ฅ
  • After host has joined, anyone can join now ๐Ÿ‘จโ€๐Ÿ‘จโ€๐Ÿ‘ฆโ€๐Ÿ‘ฆ ๐Ÿ‘ฉโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ
  • Clients need to join with their nickname
  • The message which will be send will be shown with their nickname in fron of the message

Commands to execute and things need to be installed

Python 3 need to be installed You do not need to install anything because all teh libraries used here are built-in.

  • Sockets
  • Threading Commands -
    1. Run the server.py file
python3 server.py
    1. Open another terminal and run the client.py and join as host and give the password
python client.py

(This is the video of the live example) - link to youtube - https://youtu.be/R8MLOCNbMu0

live-demo.mp4

Contirbution

Feel free to contribute to this project

License

GNU Public License

Owner
Shreejan Dolai
Hi there, I am Shreejan. I am a student and reading in class 9. I know- C, C++, Python, and javascript. Currently improving my coding skills.
Shreejan Dolai
๐Ÿ–ฅ๏ธ A cross-platform modern shell.

Ergonomica WARNING: master on this repository is not the same as a stable release! Currently, this software is purely experimental, as I am cleaning i

813 Dec 27, 2022
Open a file in your locally running Visual Studio Code instance from arbitrary terminal connections.

code-connect Open a file in your locally running Visual Studio Code instance from arbitrary terminal connections. Motivation VS Code supports opening

Christian Volkmann 56 Nov 19, 2022
iTerm2 Shell integration for Xonsh shell.

iTerm2 Shell Integration iTerm2 Shell integration for Xonsh shell. Installation To install use pip: xpip install xontrib-iterm2 # or: xpip install -U

Noorhteen Raja NJ 6 Dec 29, 2022
This is a command line program to play cricket made using Python.

SimpleCricketPython This is a command line program to play cricket made using Python How it works First you have the option of selecting whether you

Imira Randeniya 1 Sep 11, 2022
keep your machine's shell history synchronize

SyncShell Yet another tool for laziness Keep your machine's shell history synchronize Get SyncShell Currently, SyncShell is just available on PyPi and

Masoud Ghorbani 53 Dec 12, 2022
Chat with Rem in Terminal!

Chat with Rem in Terminal!

bariscodefx 1 Dec 19, 2021
Command line client for Audience Insights

Dynamics 365 Audience Insights CLI The AuI CLI is a command line tool for Dynamics 365 Audience Insights. It is based on the customerinsights Python l

Microsoft 8 Jan 09, 2023
Tool for HackMyVM platform

HMV-cli It is a tool for the HackMyVM platform. With this tool you will be able to see the machines you have pending, filter by difficulty, download d

bitc0de 11 Sep 19, 2022
Command-line search tool for GitHub

cligh is a command-line search tool for GitHub.

1 Oct 02, 2022
A command-line tool to flash python code to Codey Rocky without having to use the online mblock5 IDE.

What? A command-line tool to flash python code to Codey Rocky without having to use the online mblock5 IDE. Description This is a very low-effort proj

1 Dec 29, 2021
flora-dev-cli (fd-cli) is command line interface software to interact with flora blockchain.

Install git clone https://github.com/Flora-Network/fd-cli.git cd fd-cli python3 -m venv venv source venv/bin/activate pip install -e . --extra-index-u

14 Sep 11, 2022
CLI client for FerrisChat

A CLI Client for @FerrisChat using FerrisWheel

FerrisChat 2 Apr 01, 2022
A CLI for streaming, downloading anime shows. The shows data is indexed through GogoAnime.

Anime-cli A CLI for streaming, downloading anime shows. The shows data is indexed through GogoAnime. Please install mpv video-player for better experi

Chirag Singla 31 Oct 23, 2022
Textual: a TUI (Text User Interface) framework for Python inspired by modern web development

Textual Textual is a TUI (Text User Interface) framework for Python inspired by

17.1k Jan 04, 2023
CLI tool to fix linked references for dates.

Fix Logseq dates This is a CLI tool to fix the date references following a change in date format since the current version (0.4.4) of Logseq does not

Isaac Dadzie 5 May 18, 2022
A minimal todo list for your terminal.

todo A minimal todo list for your terminal. Installation Run the following command. pip install git+https://github.com/piero-vic/todo.git Usage todo

Piero Lescano 7 Aug 08, 2022
lazy_table - a python-tabulate wrapper for producing tables from generators

A python-tabulate wrapper for producing tables from generators. Motivation lazy_table is useful when (i) each row of your table is generated by a poss

Parsiad Azimzadeh 52 Nov 12, 2022
Jupyter notebook client in neovim

๐Ÿช Jupyter-Nvim Read jupyter notebooks in neovim Note: The plugin is still in alpha stage ๐Ÿ‘พ Usage Just open any *.ipynb file and voila! โœจ Contributin

Ahmed Khalf 85 Dec 29, 2022
Simple Digital Ocean CLI by python.

Simple Digital Ocean CLI by python.

Chiro 2 Jan 01, 2023
inklayers is a command line program that exports layers from an SVG file.

inklayers is a command line program that exports layers from an SVG file. It can be used to create slide shows by editing a single SVG file.

11 Mar 29, 2022