The JSky Intiative

Welcome to the JSky home page. Here you will find information about the JSky project and jskycat, an application based on it.


About JSky

The aim of the JSky project is to build a collection of reusable Java components for use in astronomy. The project originally grew out of the development of the Skycat application at ESO and a first draft of the design ideas were presented at the ADASS'99 conference.

Since March, 2000, JSky is being developed as part of the Gemini Observing Tool, which astronomers will use to plan their observations at the Gemini Telescope.

About jskycat

jskycat is the application that ties together all of the JSky classes. As the name suggests, jskycat is modeled after the Skycat application and implements many of the same features, which include:

  • Ability to load, save, print, and display images in FITS, JPEG, GIF, PNG, and other formats
  • Image operations (zoom, pan, manipulate the colormap, set cut levels, ...)
  • World coordinates support
  • Support for compressed FITS images (gzip, H-compress)
  • Access local and web based astronomical catalogs and image servers
  • Support for local catalogs and editing catalog tables
  • Plot the results of catalog searches as image overlays
  • Draw graphics interactively on the image
  • Save graphics and catalog query results in FITS tables with the image, for later redisplay

JSky is implemented in Java and so runs on all Java platforms (but see the requirements below).  It is freely available under the GNU public license.

See JSky Quick Tour for a quick tour of some of the main JSky widgets and applications based on them, including screenshots of jskycat and the  Gemini Observing Tool (OT).


JSky requires the following software to be already installed:

  • JDK - Sun's Java Development Kit (JDK 1.3)
  • JAI - Sun's Java Advanced Imaging toolkit (JAI 1.1)


You can download JSky from here.
The source release contains all of the sources and documentation as well as the jar files needed to run the jskycat application.

Running the JSkycat application

Under Windows, you can start jskycat by clicking on the jskycat.bat file in the top level release directory. There is also a script for use on UNIX systems.  On any Java platform you can also start jskycat from the command line as follows:

    java javaOptions -jar jsky.jar imageFileOrUrl options...

Click here for a detailed description of the command line options.  


The documentation (javadoc) is included in the download jar file. An online HTML version is available from:

Contributed Software

A number of people and institutions have contributed source code to the JSky project:

  • Jeremy Jones of the NASA Goddard Space Flight Center contributed the world coordinates support as well as many utility classes, which we borrowed from the SEA project.  Sandy Grosvenor of the GSFC also contributed many utility classes and the science package. The Timeline widget was also borrowed from the SEA sources and modified.
  • The FITS H-Compress code was contributed by Patrick Dowler of the CADC.

The following external packages are also used by JSky classes (the jar files are included in the source release):

  • JFreeChart - an open-source class library for producing charts (v0.5.6)
  • Apache Xerces Java XML Parser (v1.1.2)
  • Diva - Dynamic Interactive Visualization toolkit (version: 25Sep00, Used for interactive image graphics)
  • JEL - Java Expression Language, a Java expression compiler (v0.95, Used to evaluate catalog plot symbol expressions based on column values
  • FITS - Tom McGlynn's FITS I/O library (v0.93)
  • Log4J - Message logging facility (v1.0.4)

Related Applications

  • The next generation Gemini Observing Tool (OT) uses the JSky classes as well as the image and catalog widgets for the Telescope Position Editor.
  • The NASA SEA Visual Target Tuner (VTT) uses the JSky image classes for image handling, while JSky has taken over the world coordinates classes from the VTT, as well as a number of utility classes for saving and  printing tables and images.

JSky Mailing List

Would you like to join the JSky mailing list?
Send an empty mail message.

Would you like to post a message to the group? Send a message to
The JSky mailing list archive stores all messages of the group.