dependabot[bot] f184a1eddb ci: bump actions/setup-java from 4 to 5
Bumps [actions/setup-java](https://github.com/actions/setup-java) from 4 to 5.
- [Release notes](https://github.com/actions/setup-java/releases)
- [Commits](https://github.com/actions/setup-java/compare/v4...v5)

---
updated-dependencies:
- dependency-name: actions/setup-java
  dependency-version: '5'
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-03-14 09:07:27 +00:00

terminal-ui

Java library for terminal UI: tables, rules, colors, prompts, menus, SelectList, pager, and more. Fluent API, ANSI support, testable.

CI Java 21 License: MIT Latest release

Open in GitHub Codespaces

First time here?NEXT_STEPS.md has a short checklist (Pages, topics, release).

Install

Published to GitHub Packages. Replace VERSION with a release tag (e.g. 1.0.0).

Gradle (Kotlin DSL):

repositories {
    mavenCentral()
    maven { url = uri("https://maven.pkg.github.com/jakubbbdev/terminal-ui") }
}
dependencies {
    implementation("dev.jakub.terminal:terminal-ui:VERSION")
}

Gradle (Groovy):

repositories {
    mavenCentral()
    maven { url "https://maven.pkg.github.com/jakubbbdev/terminal-ui" }
}
dependencies {
    implementation "dev.jakub.terminal:terminal-ui:VERSION"
}

Maven:

<repository>
  <id>github</id>
  <url>https://maven.pkg.github.com/jakubbbdev/terminal-ui</url>
</repository>
<dependency>
  <groupId>dev.jakub.terminal</groupId>
  <artifactId>terminal-ui</artifactId>
  <version>VERSION</version>
</dependency>

For public packages, read access usually works without credentials. If your tool asks for auth, use a GitHub PAT with read:packages as username and the token as password.

Requirements

  • Java 21
  • Gradle 9.x (wrapper included)

Build & Test

./gradlew build

Run tests:

./gradlew test

Usage (excerpt)

import dev.jakub.terminal.Terminal;
import dev.jakub.terminal.core.Color;

// Colored text
Terminal.print("Hello").color(Color.CYAN).bold().println();

// Table
Terminal.table()
    .header("A", "B")
    .row("1", "2")
    .row("3", "4")
    .print(System.out);

// Prompt
String name = Terminal.prompt("Name: ").ask();

// Menu
String choice = Terminal.menu()
    .title("Environment")
    .option("Dev").option("Prod")
    .select();
  • In-repo docs: docs/ Home, Install, Components, Examples.
  • GitHub Pages: Enable in Settings → Pages → Source: GitHub Actions (uses workflow pages.yml). Site: https://jakubbbdev.github.io/terminal-ui/.
  • Wiki: Settings → Features → enable Wiki; copy content from docs/ if you like.

License

See LICENSE.

Description
Java library for terminal UI: tables, rules, colors, prompts, menus, SelectList, pager, and more. Fluent API, ANSI support, testable.
Readme MIT 228 KiB
Languages
Java 100%