UNPKG

5.01 kBMarkdownView Raw
1![Standup boy: Daily standup from the terminal](cover.png)
2
3[![install size](https://flat.badgen.net/packagephobia/install/standup-boy)](https://packagephobia.now.sh/result?p=standup-boy) [![Build Status](https://flat.badgen.net/travis/vikepic/standup-boy)](https://travis-ci.org/vikepic/standup-boy) [![XO code style](https://flat.badgen.net/xo/status/standup-boy)](https://github.com/xojs/xo)
4
5`standup-boy` helps you create daily standup texts fast and easy.
6It prompts you the usual stuff for a daily standup, then outputs a nicely-formatted, emoji-ready text for you to use in whatever platform you desire.
7Assumes markdown formatting.
8
9## Install
10
11```
12$ npm install --global standup-boy
13```
14
15```
16$ standup-boy --help
17 Usage
18 standup-boy [options]
19
20 Options
21 --log [--from date] Get a log of the messages sent. Specify the date from wich to retrieve te messages on with --from date
22 --path -p Get the path to the configuration file (read-only).
23 --project projectName Specify the name of the project you want to send the message to.
24
25 Examples
26 $ standup-boy
27 ? What did I accomplish yesterday? Something!
28 ? What will I do today? Something Else!
29 ? What obstacles are impeding my progress? Any info I need or want to share? Not much...
30
31 :triumph: **\`What did I accomplish yesterday\`**
32 Something!
33 :scream_cat: **\`What will I do today\`**
34 Something Else!
35 :cry: **\`What obstacles are impeding my progress? Any info I need or want to share?\`**
36 Not much...
37 Copied the result to the clipboard!
38
39 $ standup-boy --log --from "Mon Oct 19 2019"
40 Mon Oct 21 2019 21:21:09 GMT+0200 (Central European Summer Time)
41 [
42 "Did some cool stuff!",
43 "Work on some awesome stuff!",
44 "The coffee machine has run out of coffee!"
45 ]
46```
47
48## Configuration
49
50You can obtain the path to the configuration file by simply running `standup-boy --path` (read-only). Edit the resulting file to override the defaults.
51
52Mind that this configuration only alters the final text that gets copied into your clipboard.
53
54### Templates
55
56One can configure `standup-boy` to replace the default templates for the resulting standup text.
57
58An example of an alternative configuration, written in JSON format:
59
60```json
61{
62 "yesterday": "Hey, you! What did you do yesterday?",
63
64 "today": "Oh really? And what are you gonna do today?",
65
66 "obstacles": "Did you find any obstacles along the way, tho?"
67}
68```
69
70### Replace words
71
72`standup-boy` can also be configured to search and replace certain keywords for, for example, automatically link to JIRA tasks. RegExp syntax is supported.
73
74If you want to introduce the matched string into the replaced value, you can add the `%VAL%` keyword anywhere in your resulting text to interpolate the matched variable into it.
75
76An example of an alternative configuration, written in JSON format:
77
78```json
79{
80 "replace" :
81 {
82 "JIRA-[0-9]*": "[%VAL%](https://your-jira.url/%VAL%)"
83 }
84}
85```
86
87This results in this text:
88
89```
90I completed JIRA-220 today!
91```
92
93Being replaced by:
94
95```
96I completed [JIRA-220](https://your-jira.url/JIRA-220) today!
97```
98
99If translated to markdown, a nice link appears in place of the old, lame, jira task name.
100
101### Slack / Mattermost integration
102
103This module can also be configured to automatically send the resulting message to your desired slack / mattermost channel once you've answered all the questions.
104
105If your configuration is valid, a prompt should appear once your message has been written:
106
107```
108? Slack / Mattermost integration details found. Do you want to send the message? (Y/n)
109```
110
111On confirmation, the message will be sent to the destination specified by your configuration.
112
113An example of a valid configuration, written in JSON format:
114
115```json
116{
117 "username" : "vikepic",
118 "channel" : "daily-standup",
119 "url" : "https://your-slack-url"
120}
121```
122
123Alternatively, you can have more than one project on your configuration file:
124
125```json
126{
127 "projects" :
128 {
129 "project-turnip":
130 {
131 "username" : "vikepic",
132 "channel" : "daily-standup-turnip",
133 "url" : "https://your-slack-url"
134 },
135 "project-avocado":
136 {
137 "username" : "vikepic",
138 "channel" : "daily-standup-avocado",
139 "url" : "https://your-slack-url"
140 }
141 }
142}
143```
144
145If that is the case, you can specify with the `--project` flag which one will you send the message to. If not specified, the program will prompt to you which of the existing projects you want to use to send your message:
146
147```
148? Multiple projects found. Please, select the project you want to send the results to. (Use arrow keys)
149❯ project-turnip
150 project-avocado
151```
152
153Once selected, `standup-boy` will send the message to the project of your choice.
154
155## License
156
157MIT © [lts-beratung](https://www.lts-beratung.de/en.html)