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.
npm install @jaebradley/wakatime-cli -g
waka 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).
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 theEditors
section- Supports regex, so
-e /vs co.*/i
, for example (which would matchVS Code
)
- Supports regex, so
-l <Some Languages Filter>
- filters the languages in theLanguages
section- Supports regex, so
-l /java.*/i
, for example (which would matchJava
andJavaScript
)
- Supports regex, so
-p <Some Projects Filter>
- filters the projects in theProjects
section- Supports regex, so
-p /waka.*/i
, for example (which would matchwakatime-cli
andwakatime-client
)
- Supports regex, so
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 theEditors
section-L
- show theLanguages
section-P
- show theProjects
section
If data is not available for a given section, it will not be displayed even if that option was specified.
waka today
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.
1 Get it? Cause that's Waka Flocka Flame and I like bad jokes. You get it.