A CLI tool for flexible time tracking.
$ npm install -g @markusylisiurunen/timeline
$ yarn global add @markusylisiurunen/timeline
This tool uses Google services to save and display the logged time. Google Sheets is used for storing the logged entries and Google Calendar is used to display them. You need to grant permissions to these services before you can start using this tool.
To grant the required permissions, you can run the following command and follow the instructions.
$ timeline google init
This process will set up Google Sheets and Google Calendar for the tool. You should create a new Google Sheet document and it's also recommended to create a new Google Calendar calendar in order to separate your personal calendar events from the events created by this tool.
Tip: The Google Sheet document id can be found in the URL bar of your browser.
To revoke the access token granted to this tool, you can run the following command.
$ timeline google reset
Here is a list of all available commands.
||Add a new event to your timeline.|
||Show a report of your events by label.|
||Show a report of your events by type.|
||Grant the application access to your Google services.|
||Revoke the application's access to your Google services.|
||Synchronize your timeline with your Google Calendar.|
||Add a new work event to your timeline.|
||Show a live report of your work events.|
||Show a report of your work events.|
You can run the following command to get a more detailed description.
$ timeline <command> --help
This section contains the instructions to develop this package.
You could run
npm link to install the package globally but that would conflict with the real
published package from npm. Instead, you should run commands by doing
npm start -- <command>. This
will make sure you are "sandboxed" in the development environment.
$ npm start -- event add
Currently this package relies only on Google services to store events. You should setup the development version in a same way as described in the setup section.
Note! You should use the
npm start -- <command>versions of the commands.