Giter Club home page Giter Club logo

termchat's Introduction

Welcome to TermChat

Image Description




What is TermChat?

TermChat is a terminal-based chatting server application written in Java. It utilizes Java socket programming to establish connections and facilitate communication between clients.

Features

  • Terminal-Based: TermChat operates entirely within the terminal environment, making it lightweight and easy to use.
  • Chatting: Users can connect to the server and engage in real-time text-based conversations.
  • File Sharing: TermChat supports sending and downloading files between users connected to the server.
  • Nicknaming: Users can choose their display name upon connecting to the server.
  • Dynamic Port: The server dynamically assigns a port for listening to incoming connections.

How to Use

  1. Running the Server:

    • Compile and run the Server.java file to start the server.
    • The server will listen for incoming connections on a dynamically assigned port (default port: 9999).
  2. Connecting to the Server:

    • Clients can connect simpy by compling the Client.java file and running it!
    • make sure that in the clinet file you add the appropriate IP (public) of the server!
    • Upon connection, clients will be prompted to enter a nickname.
  3. Sending Messages:

    • Users can send messages in the chat room. Simply type your message and press Enter to send it to all connected users.
  4. File Sharing:

    • To upload a file to the server, use the /send command followed by the file path.
    • To download a file from the server, use the /receive command followed by the file name.
  5. Commands:

    Command Description
    /list List all available files on the server.
    /help If you're clueless
    /send </send (fileName.extension)> to upload
    /receive </receive (fileName.extension)> to download
    /rename Change your chatname
    /quit To leave the chat room

Requirements

  • Java Development Kit (JDK) (anything >=8 works like a charm)
  • Terminal or Command Prompt

Contributions

1> There still are some bugs that are pending to be fixed in this hilariously unclean code
2> That being contributions are welcome
3> If you notice any bugs please note that the bug fixes are on their way
4> Also the spelling of receive is wrong (recieve and not receive) (please use /recieve ... bug fixes are on their way!

MIT License.

termchat's People

Contributors

hardikkum444 avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.