• Stars
    star
    5,963
  • Rank 6,771 (Top 0.2 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 7 years ago
  • Updated about 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

๐Ÿ’–๐Ÿ’ป A little dashboard that tries to take care of you when you're using your terminal.

tiny-care-terminal

This is a little dashboard that tries to take care of you when you're using your terminal. It tells you cute, self care things, and tries not to stress you out. It shows:

  • the last tweets from @tinycarebot, @selfcare_bot and @magicrealismbot. The first two tend to tweet reminders about taking breaks, drinking water and looking outside, and the latter tells you strange, whimsical stories. If you don't like these bots, they're configurable!
  • your git commits from today and the last 7 days. When I get stressed out because I think I haven't done anything, it turns out that I only think about big and serious commits, and forget about all the tiny amounts of work I've actually done throughout. Hopefully this will help you too <3
  • the weather, because you might get rained on.

It looks like this, and updates every 20 minutes.

tiny terminal care screenshot

Make it go

1. Installation

Sadly only node.js v10.x is supported at the moment.

npm install -g tiny-care-terminal

(yarn also works fine.)

2. Setting the environment variables

After installing the npm package, you need to set up the configuration in your Terminal.

Every OS and shell is different so I probably won't hit all of them, but the bottom line is that you should copy those environment variables wherever the rest of your system's variables live. For example,

  • if you're using zsh, that's probably in your home directory's .zshrc file
  • if you're using bash, that could be your bash_profile file
  • if you're using fish, use set -gx key value in your ~/.config/fish/config.fish file

Note that the export bit is pretty key, to make sure that they are globally available. To check that the variables have been set correctly, you can print them in the terminal -- for example, echo $TTC_WEATHER.

Configure the dashboard

All the settings the dashboard looks at are in the sample file sample.env. This file isn't used by the dashboard, it just lists the environment variables that you can copy in your rc files:

  • TTC_BOTS are the 3 twitter bots to check, comma separated. The first entry in this list will be displayed in the big party parrot box.
  • TTC_SAY_BOX defines the ASCII-Art to show. e.g. parrot | bunny | llama | cat | yeoman | mario | ironman.ansi | stegosaurus.cow See section below for all the different options.
  • TTC_REPOS, a comma separated list of repos to look at for git commits.
  • TTC_REPOS_DEPTH is the max directory-depth to look for git repositories in the directories defined with TTC_REPOS (by default 1). Note that the deeper the directory depth, the slower the results will be fetched. Seeing your commits in tiny-terminal-care, set this to gitlog
  • TTC_WEATHER, the location to check the weather for. A zipcode doesn't always work, so if you can, use a location first (so prefer Paris over 90210)
  • TTC_CELSIUS (by default true)
  • TTC_APIKEYS -- set this to false if you don't want to use Twitter API keys and want to scrape the tweets instead.
  • TTC_UPDATE_INTERVAL, set this to change the update frequency in minutes, default is 20 minutes.
  • TTC_TERMINAL_TITLE -- set this to false if you don't want the terminal title to be changed on startup.
Configure the Say-box

There are almost endless variation of ASCII art images supported. You can select an existing image from the cowsay library just by defining a filename ending with ".cow". So e.g. vader.cow or bunny.cow would be two possible options. Also the ansi-art library is supported. In addition to the existing colorful images you can create your own image by using the webapp and download the result. After downloading the ANSI-File you can just supply its absolute path to render it within the box. (eg: TTC_SAY_BOX='/Users/om/desktop/cat.ansi'). If you want the art to be selected by random use the magic word RANDOM.

In addition to this libraries the following types are supported: bunny, llama, cat, yeoman

Set up Twitter API keys

The dashboard has two alternatives for reading tweets: using your API keys or scraping. API keys is preferred (because lol scraping), but if you're really not into that, then skip the next section and read the bit about setting TTC_APIKEYS

You need Twitter API keys for the tweets to work. It should be pretty easy to create a new app, and get these 4 values. After you've set them up, set these env variables (see the sample.env for an example):

TTC_CONSUMER_KEY='...'
TTC_CONSUMER_SECRET='...'
TTC_ACCESS_TOKEN='...'
TTC_ACCESS_TOKEN_SECRET='...'

3. Start

tiny-care-terminal

You can exit the dashboard by pressing esc or q. You can refresh it manually by pressing r.

๐Ÿ… Pomodoro Mode

You can press p to switch parrot box to pomodoro mode.

Other commands while in pomodoro mode:

s - start/pause/resume pomodoro
e - stop pomodoro
u - update pomodoro duration
b - update break time

To change default pomodoro and break durations set following variables in minutes (these should be numbers):

TTC_POMODORO=...
TTC_BREAK=...

๐Ÿ†˜ Halp I don't see my commits

  • did you forget to export your TTC_REPOS environment variable? Open a new tab, and type echo $TTC_REPOS to make sure it's not empty. Note that spaces inside the repo names are not supported right now ๐Ÿ˜ฅ

  • also there seem to be problems sometimes if the paths you're using are not fully qualified -- that is, use /Users/notwaldorf/Code rather than ~/Code and see if that helps.

  • did you use yarn? I know yarn is cool, and I've seen it work with this, but can you double check that it still doesn't work with a basic npm installation instead?

    Take care of yourself, ok? ๐Ÿ’–

More Repositories

1

emoji-translate

๐Ÿ“š Translate text to โœจemoji โœจ!
JavaScript
1,202
star
2

font-style-matcher

โšก๏ธ๐ŸŽจ Matches the x-heights and widths of two fonts
JavaScript
509
star
3

github-canned-responses

๐Ÿ’ค (inactive) Because copy pasting isn't that great.
JavaScript
369
star
4

emojillate

๐Ÿ“ท๐ŸŽจ Pixellate an image into emoji
HTML
342
star
5

frankly

๐Ÿ”ง A Polymer dashboard of issues/PRs for any number of GitHub repos
HTML
321
star
6

emoji-rain

โ˜”๏ธโœจ A Polymer element that makes it rain emoji
HTML
217
star
7

lazy-image

A custom image element that lets you load resources on demand
HTML
213
star
8

cat-dns

๐Ÿ’ป๐Ÿฑ A DNS server that resolves everything to cats.
JavaScript
203
star
9

picasso

๐ŸŽจ๐Ÿ—“ [DEPRECATED] A pretty Google Calendar theme
CSS
159
star
10

caturday-post

๐Ÿฑ๐Ÿ“ฒ Push notifications with cats and Polymer
HTML
139
star
11

flash-cards

๐Ÿ““๐Ÿ™ŠA simple flash cards app to help you learn Japanese (and other languages!)
JavaScript
137
star
12

og-emoji-font

โœจ๐Ÿ“ Emoji font based on the original DoCoMo emoji set
130
star
13

.not-quite-dotfiles

๐Ÿ’ฐ NO JUDGING
Shell
122
star
14

dear-sir-or-madam

๐Ÿ’Œ Bookmarklet that ransomifies your internets
JavaScript
103
star
15

literally

๐ŸŽž๐ŸŽ€ Literally another slide making thingie.
HTML
82
star
16

mojibrag

๐Ÿ“ข stuff. Use โœจ๐Ÿ™Š๐Ÿ˜‚๐Ÿ”ฅ.
HTML
74
star
17

doodle

๐ŸŽจ๐Ÿ‘พ Doodle with pixels and without pressure
JavaScript
68
star
18

midi-visualizer

A midi visualizer web component
JavaScript
56
star
19

is-mu-an-asleep

Electron app to find out if @muan is asleep
JavaScript
52
star
20

twemojify

๐Ÿ’ฅ Use Twitter's emoji api to fix emoji in Chrome
JavaScript
52
star
21

emoji-selector

โœ๏ธโœจ A Polymer paper-input-addon element that adds an emoji keyboard inputs
HTML
51
star
22

knit-a-stitch

๐ŸŽ€ Draw a pattern that you want to knit, and get the knitting chart for it!
JavaScript
48
star
23

diagramophone

๐ŸŽจ code your diagrams, because drawing them really sucks
JavaScript
39
star
24

muster

โ‡๏ธ A website that lets you play with overlapping patterns.
HTML
31
star
25

notwaldorf.github.com

๐Ÿ“ข I lost a bet and now I have a blog.
HTML
31
star
26

to_emoji

๐Ÿค–โœจ Twitter bot that translates every tweet you send it to emoji
JavaScript
30
star
27

ruby-eh

๐Ÿ’Ž Ruby for Canadians: an instruction manual.
Ruby
25
star
28

sparkle

โœจPixelate and sparkle an image. Any image.
JavaScript
22
star
29

example-magenta-in-ts

A demo of using @magenta/music as a dev-dependency in a TypeScript project
TypeScript
21
star
30

polymer-color-picker

[๐Ÿ’ค Deprecated: Go to https://github.com/polymerelements/paper-swatch-picker instead!] A color picker with all the Material Design colours
HTML
18
star
31

is-ie10-dead

๐Ÿ’€ Well, is it?
HTML
17
star
32

meowto

๐Ÿ”ฎ A client-side URL shortener
JavaScript
17
star
33

tensorflow-experiments

JavaScript
13
star
34

gh-wiki-to-pages

[WIP] Automatically publish a GitHub wiki to a gh-pages Jekyll site
CSS
13
star
35

polymer-gold-elements-demo

๐Ÿ’ธ A checkout form using the Polymer gold elements
HTML
10
star
36

old-research-papers

Old Reinforcement Learning research from university
9
star
37

polymer-demo-transmogrifier

[๐Ÿ’ค Deprecated: Go to https://github.com/polymerelements/iron-demo-helpers instead!] Polymer element that renders both the source and demo of a code snippet
HTML
9
star
38

emoji-web-components-art-talk

I gave a talk about web components and art and emoji and this is it.
HTML
7
star
39

bear-or-berra

[WIP, don't look] Who said it, Yogi Bear or Yogi Berra?
JavaScript
7
star
40

shrinkwrap

๐Ÿ‘” [forever unfinished] t-shirt sizing / progress tracking app for scrum planning. because sometimes you just have to. and because i have to learn websockets somehow.
JavaScript
7
star
41

fierimas

๐ŸŽ„๐ŸŽ… It's like Guy Fieri's Grocery Games but for holiday presents
JavaScript
4
star
42

fuck-yeah-css

CSS
4
star
43

shpool-stats

๐ŸŽฑ I play pool every day at lunch and stats need to be had.
JavaScript
2
star
44

ponies

๐Ÿด Here, have a pony
1
star
45

better-form

WIP - look away
HTML
1
star
46

hacknight

Montreal all-girl hack night website!
CSS
1
star
47

input-tests

Look away. Playground to test the v1 custom elements polyfill
HTML
1
star
48

hacknight-chrome-extensions

Sample Chrome Extensions for the all-girl hacknight tutorial
JavaScript
1
star