Skip to content

hopetoknow/java-project-lvl2

Repository files navigation

Java Project Lvl2

Java Project Lvl2 is a CLI application that allows you to compare text differences between two files.

Application features:

  • Supports various input formats: YAML and JSON
  • Report generation as plain text, stylish and JSON

I use the picocli framework to easily create a CLI application and Gradle as a build automation tool. GitHub Actions acts as a continuous integration (CI) platform. The JUnit framework is used to write tests. I also use Make & Makefile for frequently used commands in order to save time.

Hexlet tests and linter status:

Actions Status

GitHub Actions workflow status badge

Java CI

Maintainability badge from Code Climate

Maintainability

Test Coverage badge from Code Climate

Test Coverage

App launch example

Differ gif

Asciinema URL

Install

make

Run

cd build/install/app/bin/
./app [-hV] [-f=format] <filepath1> <filepath2> 
  <filepath1>           path to first file
  <filepath2>           path to second file
  -f, --format=format   output format [default: stylish] Possible values: stylish, plain, json.
  -h, --help            Show this help message and exit.
  -V, --version         Print version information and exit.

Build

make build

Run checkstyle

make lint

Check for Dependency Updates

make check-updates