0.01
No commit activity in last 3 years
No release in over 3 years
A client for posting data to Exist.io
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

~> 1.13
~> 10.0
~> 3.0

Runtime

~> 2.10
~> 0.15
 Project Readme

ExistClient

A tool for reporting metrics to Exist.io. It currently supports time tracking and completed tasks and supports plugins to work with different apps.

Installation

Install the gem:

$ gem install exist_client

Run the setup command:

$ exist_client setup

This will create a new directory called .exist in your home folder. Inside is a config file config.yml where you can configure ExistClient.

Configuration

In the config.yml file, you can specify which plugins to use as well as the cutoff hour to switch to a new day (it defaults to 5am).

plugins:
  tasks: omni_focus
  time_tracking: qbserve
cutoff_hour: 3

Plugins

Tasks

Time Tracking

Usage

In order to use the client, you will need an Exist API key. You can generate one here, then make it available as the environment variable EXIST_API_KEY.

Once you have your API key, you can send metrics manually with exist_client report.

If you're on a Mac and you want to run the report automatically, you can create a launchd agent. You can see an example that runs every day at 1pm here. The agent runs a helper command that looks like this:

#!/bin/bash

source ~/.secrets # Load your Exist API key
sleep 5 # Wait for network

# You may need to use something like ~/.rbenv/shims/exist_client if you use a ruby version manager
~/.rbenv/shims/exist_client report

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/exist_client. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the Contributor Covenant code of conduct.

License

The gem is available as open source under the terms of the MIT License.