https://github.com/aadewunmi/swing_chat_messenger_application
Java Chat Messenger Application (with Swing GUI) supporting Ngrok and Multirun functionality.
https://github.com/aadewunmi/swing_chat_messenger_application
chat-application chatroom java-swing-application java11 javasockets multirun multithreading ngrok swing-gui tcp-client-server tcp-ip tcp-server-client
Last synced: about 1 month ago
JSON representation
Java Chat Messenger Application (with Swing GUI) supporting Ngrok and Multirun functionality.
- Host: GitHub
- URL: https://github.com/aadewunmi/swing_chat_messenger_application
- Owner: AAdewunmi
- Created: 2022-10-16T08:04:12.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2022-10-21T13:34:04.000Z (over 2 years ago)
- Last Synced: 2025-01-25T06:11:31.174Z (3 months ago)
- Topics: chat-application, chatroom, java-swing-application, java11, javasockets, multirun, multithreading, ngrok, swing-gui, tcp-client-server, tcp-ip, tcp-server-client
- Language: Java
- Homepage:
- Size: 138 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Project Title:
A Java Chat Messenger Application.
## 1. Project Description:
A Chat Messenger Application, built using Java 8, and Java Swing for GUI.
In addition, it supports Ngrok and Multirun functionality.
## 2. Tech Stack:
* Language - Java 8
* IDE - Intellij (Plugin Multirun)
* API - Ngrok (Port Forwarding System)## 3. Install Project:
i. Clone the git repo
```
https://github.com/AAdewunmi/Swing_Chat_Messenger_Application.git
```ii. Open project folder
iii. Explore
## 4. Register and Install Ngrok (Global, OSX):
i. Installing ngrok on OSX (Read Ngrok documentation and Github Gist below):
https://ngrok.com/docs/getting-started
https://gist.github.com/wosephjeber/aa174fb851dfe87e644e
ii. Access Ngrok TCP tunnel using Terminal:
Run > $ ngrok tcp 2020
> TERMINAL ERROR MESSAGE!
TCP tunnels are only available after you sign up.
Sign up at: https://dashboard.ngrok.com/signupIf you have already signed up, make sure your authtoken is installed.
Your authtoken is available on your dashboard: https://dashboard.ngrok.com/get-started/your-authtokenRun > $ ngrok authtoken [TOKEN]
Re-Run > $ ngrok tcp 2020

iii. Use Ngrok as a service in Intellij IDE (YouTube Video):
https://www.youtube.com/watch?v=eMt29lTPh8I
## 5. How To Use:
i. Run Server Class, then Client Class.
ii. Run Server and *** multiple Client configs on "localhost"/Port Number 2020.
iii. Run Server and *** multiple Client configs on Ngrok-as-a-service (Download plugin) on "localhost"/Port Number 2020.
iv. Run Server and *** multiple Client configs on Multirun-as-a-service (Download plugin) on "localhost"/Port Number 2020.
v. Run Server config on "localhost"/Port 2020, Run multiple *** Client configs using NGROK forwarding service (See commented code in Client and Server Class). Sample Ngrok forwarding address: "x.tcp.ngrok.io", port number XXXXX.
* multiple Client configs: To create multiple clients using Intellij, you need to go to
-> Edit Configurations
-> Click Client
-> Copy Configuration
-> Client(1) created. This process can be repeated to create as many clients as required.## 6. Demo (Chat Screenshot):

## 7. Contribution:
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
## 8. Adapted from:
UDEMY: Java Development Mega Course: Build Projects Practically
(Java Programming Course: Learn Development of JAVA Projects Using JSP, JDBC, Servlets, Swing, Spring Boot, Maven, Hibernate)
Project Name: Project 38: TCP Chat Application
Created by: Engineering.Org.In
Last updated: 03/2022
URL: https://www.udemy.com/course/build-real-world-java-projects-using-spring-jsp-jdbc/