Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

JGopher

JGopher is a gopher client for Java (17) which is designed to be lightweight, portable, and adhere to the core principles which makes gopher, gopher. The current development branch contains the new JGopher 1.0 codebase which is a complete rewrite of the older codebase used until version 0.8.1. The older codebase was getting very old at this point, and considering I started work on JGopher when I was bored during the pandemic, I thought it was high time to wipe the slate clean and start again

The icons provided, like in the older versions of JGopher, are the public domain icons provided by the Apache 2 web server. They remain in the public domain. I claim no credit over them.

Differences from the older codebase

The main difference comes in the view. Rather than going for the old "pseudo-hypertext" look that JGopher did previously (where it tried way too hard to be a browser), it now uses a classic file explorer look, where opening selectors opens new windows displaying the listing. While this may take some getting used to, it allows the codebase to be much simpler and removes the need for complicated history management.

Aside from this, JGopher also got a major rework in how components talk to graphical layers. In the old codebase, this was all mashed together into an unmaintainable mess. In the new codebase, a somewhat MVC pattern is used which allows the drawing code to be much more portable. There is a barely working AWT port in the codebase that I may flesh out into a proper port sometime in the future.

Some features (mainly hURL http links) are not supported in the new codebase. This is partially an ideological decision since I personally see them as more of a hack than a genuine protocol feature. The files will simply be prompted as a download for an HTML file (with the URL of the page being the default file name when saving).

Building

Like with JGopher previously, the only dependencies are in the standard distribution of Java. Simply type mvn compile and mvn package to get an executable jar file which will run JGopher.

About

A faithful and opinionated graphical gopher client for Java.

Topics

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages