SkillAgentSearch skills...

Clique

A lightweight and extensible Java library for styling and beautifying terminal output

Install / Use

/learn @kusoroadeolu/Clique

README

Supported JVM Versions License

CLIQUE

A dependency free, lightweight and extensible CLI library for beautifying Java terminal applications.

Clique Hero

Why Clique?

Ansi Comparison

Quick Start

Maven


<dependency>
      <groupId>io.github.kusoroadeolu</groupId>
      <artifactId>clique-core</artifactId>
      <version>3.2.0</version>
</dependency>

Gradle

dependencies {
    implementation 'io.github.kusoroadeolu:clique-core:3.2.0'
}

Features

Markup Parser

Simple, readable syntax for styled text:

Clique.parser().print("[red, bold]Error:[/] Something went wrong");

Themes

Drop in popular color schemes with one line:

Clique.registerTheme("catppuccin-mocha");
Clique.parser().print("[ctp_mauve]Styled with Catppuccin![/]");

Built-in themes: Catppuccin, Dracula, Gruvbox, Nord, Tokyo Night.

Tables

Build beautiful tables with multiple styles:

Clique.table(TableType.DEFAULT)
    .headers("Name", "Age", "Status")
    .row("Alice", "25", "Active")
    .row("Bob", "30", "Inactive")
    .render();

Sample Table

Boxes

Single-cell boxes with text wrapping:

Clique.box(BoxType.ROUNDED)
    .withDimensions(40, 10) //Width, length
    .content("Your message here")
    .render();

Sample box

Tree

Display hierarchical data with clean connector lines:

Tree tree = Clique.tree("project/");

Tree src = tree.add("src/");
src.add("Main.java");
src.add("Utils.java");

tree.add("README.md");
tree.print();

Sample Tree

Frames

Layout container that vertically stacks nested Clique components inside a border:

Clique.frame()
    .title("[bold]My App[/]")
    .nest(table)
    .nest(progressBar)
    .render();

Sample Frame

StyleBuilder

Programmatic API for building styled strings:

Clique.styleBuilder()
    .append("Success: ", ColorCode.GREEN, StyleCode.BOLD)
    .append("Operation completed", Clique.rgb(100, 120, 140))
    .print();

Progress Bars

Visual feedback for long-running operations:

ProgressBar bar = Clique.progressBar(100);
bar.tickAnimated(70);

Sample progress bar

Note: Style registration/lookup and config objects(once built) are thread-safe. All other components are not, avoid sharing instances across threads.

Documentation

Try the Demos

git clone https://github.com/kusoroadeolu/clique-demos.git
cd clique-demos
javac src/demo/QuizGame.java
java -cp src demo.QuizGame

License

Apache 2.0 License

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Related Skills

View on GitHub
GitHub Stars125
CategoryDevelopment
Updated11h ago
Forks2

Languages

Java

Security Score

100/100

Audited on Apr 1, 2026

No findings