The Java module org.cicirello.core provides some of the core utilities and data structures used in several of our other libraries and projects, including but not limited to Chips-n-Salsa and JavaPermutationTools, as well as various applications that use those libraries.

The source code repository is hosted on GitHub; and is licensed under the GNU General Public License Version 3 (GPLv3). The API documentation is found on this site. The module is regularly published to Maven Central, from which it is easily imported into software projects using Maven and other commonly used build tools.

The org.cicirello.core module originated as part of the research of Vincent A. Cicirello.

Importing from Maven Central

To import org.cicirello.core from the Maven Central repository (if your build tool is Maven), add the following to the dependencies section of your “pom.xml” (for other build tools, see your build tool's documentation for the equivalent):


Just replace x.y.z with your desired version of the library.

Java Modules

To use the org.cicirello.core module in your project, add the following to your

module {
	requires org.cicirello.core;

Semantic Versioning

We use Semantic Versioning with version numbers of the form: MAJOR.MINOR.PATCH, where differences in MAJOR correspond to incompatible API changes, differences in MINOR correspond to introduction of backwards compatible new functionality, and PATCH corresponds to backwards compatible bug fixes.

Development Process

To maintain a high quality library, our development process utilizes the following:

Dependent Libraries

The following libraries depend upon org.cicirello.core.