Skip to content
Useful tools for working with Grid World in Java Swing panels. Comments and suggestions are very welcome!
Find file
Pull request Compare This branch is 1 commit ahead, 533 commits behind SquidPony:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


SquidLib is a Java library that provides a full featured toolbox for working with turn based games in Swing.

SquidLib is used for Earl Spork, Wyrm, and Epigon. (These games can be found at

Current Features
*Ease Of Use
	Standard GUI notation of (x,y) locations within the grid.
	Uses Swing
	Any Font can be used
	Specify Grid and Font size multiple ways
		Set number of cells in the grid and Font to be used
			Size of cell is adjusted to optimally fit the Font size given
		Set size of the cell, number of cells in the grid, and Font to be used
			Font is dynamically resized to fit optimally within the cell
	Font size and style can be changed on the fly
	Standard JComponent that meets JavaBean requirements for use with NetBeans built-in GUI Builder
	Multiple grids of different configurations can be used simultaneously in the same display
*Lots of Color
	Foreground and Background can be set individually on a per-cell basis
	SColor class extends Color and can be used as a drop-in replacement for any awt.Color needs
	Over 500 named colors
	Automatic color caching minimizes memory overhead
	Can get a list of colors that are a gradient between two colors
	Can perform "dark", "light", and "desaturate" commands on any color
	Can get an arbitrary amount of blend between two colors
*Full Featured API
	Each named color has a sample of its appearance in the Javadoc against multiple backgrounds
		HTML browsing of the API shows these samples
		Pop-up javadoc in NetBeans and Eclipse show these samples
	Demos of all functionality included
	Demos of tying in to mouse and keyboard Swing events included
*Math Toolkit
	Custom extension of Random allows drop-in replacement with added features
	Able to find Bresenham Line for 2D and 3D coordinates.

Features in Nightly Build
	Slide, bump, wiggle, etc.
*Generic Images
	Load in images as tiles alongside character tiles.

GitHub repository:

Blog updates:

Developed by Eben Howard
Something went wrong with that request. Please try again.