CouchUnit is a JUnit extension that helps administer tests run against CouchDB. It mimics the syntax and feel of DBUnit by helping developers write tests that load XML style datasets to place databases in known states between integration tests. A number of standard operations are used to store and remove CouchDB documents. Any number of documents may be declared within a single CouchUnit dataset.
RSyntaxTextArea is a syntax highlighting, code folding text editor. It has support for over 30 programming languages and is completely customizable. By extending JTextComponent, it easily integrates into any Swing application and provides an easy way to add syntax highlighting to a program.
Piccolo2D is a toolkit that supports the development of 2D structured graphics programs, in general, and Zoomable User Interfaces (ZUIs), in particular. A ZUI is a new kind of interface that presents a huge canvas of information on a traditional computer display by letting the user smoothly zoom in to get more detailed information and zoom out for an overview. It uses a "scene-graph" model that is common to 3D environments. This means that Piccolo maintains a hierarchical structure of objects and cameras.
Big Fraction is a Java class that represents an immutable fraction, as held in a numerator and denominator. Calculations may be performed on this fraction, but the value is always held as a numerator/denominator pair. Therefore, no precision is lost. The fraction may be top-heavy, but is reduced when printed. The value can be converted into floats if desired, although precision will invariably be lost, and some large fractions (such as calculations for pi) can not be converted if the values of BigInteger exceed the range capable of floats.
The NeEM library provides an implementation of epidemic multicast (also called probabilistic or gossip-based) in wide-area networks by using multiple TCP/IP connections in a non-blocking fashion. Epidemic multicast protocols achieve stable high throughput regardless of node and network faults and scale to very large numbers of participants. Implementation is based on Java 5 and takes advantage of NIO. The goal of this implementation is to be small, self-contained, and practical.