Skip to content

aboullaite/covid-19-picocli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 

Repository files navigation

covid-19-picocli

Track the COVID-19 disease in the command line:

  • 📚 Worldwide Coronavirus disease (COVID-19) reporting
  • 🔢 Daily COVID-19 statistics for many countries
  • 🗃️ Data: Country, Cases, Deaths, Recovered, Active, Critical, Per Million
  • 📈 Line Charts
Usage: cov19 [-aghV] [-c=<country>]
Track covid-19 from your command line
  -a, --all                 show data for all affected countries
  -c, --country=<country>   Country to display data for
  -g, --graph               show data as graph history of last 30 days
  -h, --help                Show this help message and exit.
  -V, --version             Print version information and exit.

It is built using java, picocli, with support to generate a native binary using graal VM.

Inspired from ahmadawais/corona-cli

Build the app

The app uses maven as build tool. To build the app, simply run the command below:

$ mvn clean package

This will generate a uber-jar that contains all its dependencies:

$ java -jar ./target/covid-java-cli-1.0-SNAPSHOT.jar --help                                                                                                                  ✔ │ 02:01:16 PM 
Usage: cov19 [-aghV] [-c=<country>]
Track covid-19 from your command line
  -a, --all                 show data for all affected countries
  -c, --country=<country>   Country to display data for
  -g, --graph               show data as graph history of last 30 days
  -h, --help                Show this help message and exit.
  -V, --version             Print version information and exit.

Generate native binary

We use Graal VM native-image tool to compile our application into compiled into a native image. Make sure that you are using GraalVM as your JAVA_HOME, and the native image tool is installed on your machine. Then run:

$ mvn clean verify

It will take a couple of second to generate the native executable. Once it finished, you can run the exectable without having a JVM:

$ ./cov19-cli --help                                                                                                                                                                                       ✔ │ 10:00:47 pm
  Usage: cov19 [-aghV] [-c=<country>]
  Track covid-19 from your command line
    -a, --all                 show data for all affected countries
    -c, --country=<country>   Country to display data for
    -g, --graph               show data as graph history of last 30 days
    -h, --help                Show this help message and exit.
    -V, --version             Print version information and exit.

About

Covid-19 dashboard built using picocli

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages