1
0
mirror of https://github.com/taigrr/wtf synced 2025-01-18 04:03:14 -08:00
wtf/README.md
2018-04-09 18:11:09 -07:00

83 lines
3.2 KiB
Markdown

<p align="center">
<img src="docs/wtf.jpg?raw=true" title="WTF" width="852" height="240")
</p>
A personal terminal-based dashboard utility, designed for
displaying infrequently-updating, but very important, daily data.
## Required Prerequisites
1. [Git](https://git-scm.com/downloads)
1. [Go](https://golang.org/doc/install)
## Optional Prerequisites
Depending on which modules you want to run, you'll need the appropriate API and
configuration credentials. For each of the following supported services
that you want to use, create an ENV var named as below with the
described value.
| | Service | ENV var | Value |
|----|-----------------|--------------------------------|-------------------------------|
| 1 | [BambooHR](https://www.bamboohr.com/api/documentation/) | `WTF_BAMBOO_HR_TOKEN` | BambooHR API token |
| 2 | | `WTF_BAMBOO_HR_SUBDOMAIN` | BambooHR subdomain |
| 3 | [Github](https://developer.github.com/v3/) | `WTF_GITHUB_TOKEN` | Github API token |
| 4 | [Google Calendar](https://developers.google.com/calendar/) | `WTF_GOOGLE_CAL_CLIENT_ID` | Google Calendar client ID |
| 5 | | `WTF_GOOGLE_CAL_CLIENT_SECRET` | Google Calendar client secret |
| 6 | [JIRA](https://developer.atlassian.com/server/jira/platform/rest-apis/) | `WTF_JIRA_USERNAME` | You JIRA username |
| 7 | | `WTF_JIRA_PASSWORD` | Your JIRA password |
| 8 | [New Relic](https://docs.newrelic.com/docs/apis/rest-api-v2/getting-started/introduction-new-relic-rest-api-v2) | `WTF_NEW_RELIC_API_KEY` | New Relic API key |
| 9 | [OpsGenie](https://docs.opsgenie.com/docs/api-overview) | `WTF_OPS_GENIE_API_KEY` | OpsGenie API key |
| 10 | [OpenWeatherMap](https://openweathermap.org/api) | `WTF_OWM_API_KEY` | OpenWeatherMap API key |
## Installation
1. Clone this directory and install all the dependencies.
2. Create a directory called `.wtf` in your `home` directory (ie:
`~/.wtf/`)
3. In that directory copy the `config.yml` file (ie: `~/.wtf/config.yml`)
4. Disable all the modules for which you need an API key, by setting
`enabled: false` in the config file
5. `go run wtf.go`
It'll probably run.
## Modules
Modules are the heart of WTF. Each one connects to a specific services
or renders data about a specific concept. The following modules are
included in WTF.
### BambooHR
Displays who's out on vacation or off sick today.
### Git
Displays the current branch, a list of changed files, and the last n
commits for a specified repository.
### Github
Displays your open pull requests and any code review requests assigned
to you.
### Google Calendar
Displays the next n calendar events.
### OpsGenie
Displays who's currently on call for all your schedules.
### Security
Displays whether or not your firewall is on and configured in 'stealth'
mode. Also displays the name of the current Wifi network and whether
or not it's encrypted.
### Weather
Displays the temperatures for the day, weather description, and the
sunrise and sunset times.