Coder Social home page Coder Social logo

jgneff / volano Goto Github PK

View Code? Open in Web Editor NEW
6.0 3.0 3.0 657 KB

VOLANO Chat Server

Home Page: http://www.volano.com

License: GNU General Public License v3.0

Makefile 0.92% Shell 0.77% Java 89.83% Batchfile 0.49% HTML 7.95% CSS 0.03%
java chat server applets

volano's Introduction

This repository contains the source code of the VOLANO™ chat server, a formerly proprietary software package that is now available as free and open source software under the GNU General Public License v3.0.

The VOLANO chat server is a cross-platform console application written in Java with clients that run in the Web browser as Java applets. The software was written by John Neffenger, the owner of this repository, with later contributions by Graham Savage and Paul Jack. VOLANO version 1.0 was released on June 18, 1996, and in the years that followed, the software was licensed to customers in 50 countries around the world. Customers used the VOLANO chat server to provide chat rooms for visitors to their Web sites.

Goals

My goals for this project are to update the software as follows:

  • Switch the build automation from Apache Ant and GNU Make to Gradle.

  • Refactor the VOLANO chat server for the latest Java Development Kit (JDK).

  • Develop a new client for the modern Web to replace the existing Java applets.

  • Provide the VOLANO chat server for Linux as a self-contained app in the Snap Store.

  • Create a Web-based administrator interface for managing the VOLANO chat server.

This is a relatively large project, and I have a lot to learn. The initial commit contains 20,100 lines of Java source code. The time-frame for completing all of these goals, therefore, is likely closer to a few years rather than a few weeks. Please note that I may modify or abandon some of the goals based on my availability and changes to the software ecosystem.

Status

I expect to make comprehensive changes as I bring the project up to date with current Java code practices, build automation tools, and software packaging techniques. During that time, entire sections of the code may be rewritten, moved, or deleted. I plan to accept issue reports and pull requests once the source code is stable enough to allow for collaboration.

I will post build instructions and information on running and debugging the software after I have converted the build automation to Gradle.

Screenshots

The client side runs using the appletviewer command available in versions of the Java Development Kit prior to version 11. The main applet window displays a list of chat rooms as seen in the screenshot below.

VolanoChat applet main window

The Enter Room button opens another window, shown below, for sending and receiving messages in the chat room. At the top of the window is a banner area which can display either a series of static images or another interactive Java applet embedded in this one.

VolanoChat applet chat window

The server side can run as an automatic background service, or it can be started from the command line as a console application as shown by the Bash session below.

john@ubuntu:~/opt/volano-2.13$ ./startup.sh
openjdk version "1.8.0_242"
OpenJDK Runtime Environment (build 1.8.0_242-8u242-b08-0ubuntu3~16.04-b08)
OpenJDK 64-Bit Server VM (build 25.242-b08, mixed mode)
VOLANO(TM) Chat Server Version 2.13.4
Copyright (C) 1996-2015 John Neffenger
Loading server properties from "/home/john/opt/volano-2.13/conf/properties.txt".
ubuntu:8000 (192.168.1.2:8000) VolanoChatPro - unlimited connections.
Apache Tomcat/4.1.40

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.