/wakatime-cli

🖥 Visualize your daily WakaTime stats from the command line

Primary LanguageJavaScriptMIT LicenseMIT

Wakatime CLI npm npm

wakatime-cli

Introduction

waka-flocka-flame1

As a mega-nerd (proven by my use of the term, "mega-nerd"), I am a big fan of the WakaTime service for tracking my coding.

But I think it'd be pretty damn cool if I could see some of my stats in the Terminal via a CLI.

alt-text

Installation

npm install @jaebradley/wakatime-cli -g

Usage

Setup

waka setup

setup

The wakatimecli uses the WakaTime API to get data. One of the easiest ways to authenticate requests is by using your WakaTime API key, which can be retrieved by going to your WakaTime user profile.

Then, use the waka setup command to set your API key for the wakatimecli project, which will store your key using node-keytar (so in Keychain on OSX, for example).

Summary Options

Section Filters

There are a couple notable command line options for filtering summary data.

However, filtering only impacts the summary data for the given section. So filtering by a particular project name will only change the output data for the Projects section and won't impact the Editors or Languages section.

This is primarily due to the output from the Wakatime /summaries endpoint which doesn't return linked data across editors, projects, and languages.

  • -e <Some Editors Filter> - filters the editors in the Editors section
    • Supports regex, so -e /vs co.*/i, for example (which would match VS Code)
  • -l <Some Languages Filter> - filters the languages in the Languages section
    • Supports regex, so -l /java.*/i, for example (which would match Java and JavaScript)
  • -p <Some Projects Filter> - filters the projects in the Projects section
    • Supports regex, so -p /waka.*/i, for example (which would match wakatime-cli and wakatime-client)

Section Options

You might want to restrict the sections that are outputted (if you want to only see your language statistics, for example).

Here are the following ways to toggle specific sections. If no options are specified, all sections will be displayed.

  • -E - show the Editors section
  • -L - show the Languages section
  • -P - show the Projects section

If data is not available for a given section, it will not be displayed even if that option was specified.

Today's Summary

waka today

alt-text

Outputs the summary stats (total time recorded, editors, languages, and projects) for the current day using the summaries API.

waka yesterday

Like Today's Summary but, like, the day before.

Footnotes

1 Get it? Cause that's Waka Flocka Flame and I like bad jokes. You get it.