checkcheckit 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- data/.travis.yml +5 -0
- data/Gemfile +2 -1
- data/README.md +62 -17
- data/Rakefile +3 -0
- data/lib/checkcheckit/console.rb +3 -1
- data/lib/checkcheckit/version.rb +1 -1
- metadata +4 -3
data/.travis.yml
ADDED
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -2,18 +2,39 @@
|
|
2
2
|
|
3
3
|
use checklists, like a boss
|
4
4
|
|
5
|
+
CheckCheckIt is a ruby library that exposes the command line program `check` and companion web service that makes the process of going through a checklist easy to sync across multiple people.
|
6
|
+
|
7
|
+
Right now everything begins at the command line and a directory of checklists.
|
8
|
+
|
9
|
+
A "checklist" is just a text file.
|
10
|
+
Every line that starts with a dash '-' is a step.
|
11
|
+
Everything beneath a step is that step's body or description.
|
12
|
+
|
5
13
|
## Installation
|
6
14
|
|
7
15
|
$ gem install checkcheckit
|
8
16
|
|
9
|
-
##
|
17
|
+
## Usage
|
10
18
|
|
11
|
-
|
12
|
-
|
19
|
+
# list your checklists
|
20
|
+
$ check list
|
21
|
+
# Checklists
|
22
|
+
personal
|
23
|
+
groceries
|
24
|
+
work
|
25
|
+
deploy
|
13
26
|
|
14
|
-
|
27
|
+
# start a list at the command line and keep it there
|
28
|
+
$ check start deploy
|
29
|
+
|-------| Step 1: Pull everything from git
|
30
|
+
> git pull origin
|
31
|
+
Check: ^C
|
32
|
+
Goodbye!
|
15
33
|
|
16
|
-
|
34
|
+
# start a list, open it in your browser, and skip the CLI interaction
|
35
|
+
$ check start groceries --live --web --open
|
36
|
+
$ check start groceries --live --no-cli -O
|
37
|
+
Live at URL: http://checkcheckit.herokuapp.com/4f24b9d933d5467ec913461b8da3f952dbe724cb
|
17
38
|
|
18
39
|
### `list` the checklists
|
19
40
|
|
@@ -23,10 +44,6 @@ In that directory are folders for your organizations, groups, etc.
|
|
23
44
|
|
24
45
|
In those folders are your checklists.
|
25
46
|
|
26
|
-
A "checklist" is just a text file.
|
27
|
-
Every line that starts with a dash '-' is a step.
|
28
|
-
Everything beneath a step is that step's body or description.
|
29
|
-
|
30
47
|
$ check list
|
31
48
|
# Checklists
|
32
49
|
heroku
|
@@ -73,18 +90,46 @@ For example:
|
|
73
90
|
|
74
91
|
### Live mode
|
75
92
|
|
76
|
-
This is fun.
|
77
|
-
that address will receive a message with a link to a web version of the checklist.
|
93
|
+
This is fun.
|
78
94
|
|
79
|
-
|
95
|
+
`check start <listname> --live` will create an _interactive_ companion URL on the web.
|
80
96
|
|
81
|
-
|
82
|
-
|
83
|
-
|
97
|
+
This URL is websockets-enabled and communicates with the command line.
|
98
|
+
This means command line 'checks' get pushed to the web. Once a list is on the web you can
|
99
|
+
disconnect the command line and continue finishing it (with others).
|
100
|
+
|
101
|
+
$ check start deploy --live
|
102
|
+
Live at URL: http://checkcheckit.herokuapp.com/4f24b9d933d5467ec913461b8da3f952dbe724cb
|
103
|
+
Websocket refused connection - using POST
|
104
|
+
|........| Step 1: Make sure there are no uncommitted changes
|
105
|
+
> `git status`
|
106
|
+
Check:
|
84
107
|
|
85
|
-
|
108
|
+
|+.......| Step 2: Pull everything from git
|
109
|
+
> `git pull`
|
110
|
+
Check: ^C
|
111
|
+
bye
|
86
112
|
|
87
|
-
|
113
|
+
During that console session the web UI would be interactively crossing items off the list:
|
114
|
+
<img height="400px" src="http://f.cl.ly/items/1h3V0L1a1p1a062I2X3f/Screen%20Shot%202012-12-16%20at%209.37.56%20PM.png" />
|
115
|
+
|
116
|
+
### Email
|
117
|
+
Specify an email (or a comma-separated list) on the command line via the `--email` flag and
|
118
|
+
the address(es) will receive an email with a link to a web version of the checklist.
|
119
|
+
|
120
|
+
|
121
|
+
$ check start deploy --email bob@work.com,steve@work.com
|
122
|
+
Live at URL: http://checkcheckit.herokuapp.com/4f24b9d933d5467ec913461b8da3f952dbe724cb
|
123
|
+
Websocket refused connection - using POST
|
124
|
+
|........| Step 1: Make sure there are no uncommitted changes
|
125
|
+
> `git status`
|
126
|
+
Check: ^C
|
127
|
+
bye
|
128
|
+
|
129
|
+
## TODO
|
130
|
+
|
131
|
+
- resume a run locally from URL
|
132
|
+
- post to campfire
|
88
133
|
|
89
134
|
## Contributing
|
90
135
|
|
data/Rakefile
CHANGED
data/lib/checkcheckit/console.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'ostruct'
|
2
2
|
require 'uri'
|
3
3
|
|
4
|
+
# Uses the "big bowl of pudding' architecture
|
4
5
|
class CheckCheckIt::Console
|
5
6
|
attr_accessor :list_dir
|
6
7
|
attr_accessor :out_stream, :in_stream, :web_socket
|
@@ -51,6 +52,8 @@ class CheckCheckIt::Console
|
|
51
52
|
Process.detach fork{ exec("open #{url}") }
|
52
53
|
end
|
53
54
|
|
55
|
+
return if @options['no-cli'] || @options['web-only']
|
56
|
+
|
54
57
|
begin
|
55
58
|
@client = web_socket.connect(web_service_url, sync: true) do
|
56
59
|
after_start { emit('register', {list_id: list_id}) }
|
@@ -61,7 +64,6 @@ class CheckCheckIt::Console
|
|
61
64
|
end
|
62
65
|
end
|
63
66
|
|
64
|
-
return if @options['no-cli'] || @options['web']
|
65
67
|
step_through_list(list)
|
66
68
|
else
|
67
69
|
puts "Could not find checklist via: #{target}"
|
data/lib/checkcheckit/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: checkcheckit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -84,6 +84,7 @@ extensions: []
|
|
84
84
|
extra_rdoc_files: []
|
85
85
|
files:
|
86
86
|
- .gitignore
|
87
|
+
- .travis.yml
|
87
88
|
- Gemfile
|
88
89
|
- LICENSE.txt
|
89
90
|
- README.md
|
@@ -114,7 +115,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
114
115
|
version: '0'
|
115
116
|
segments:
|
116
117
|
- 0
|
117
|
-
hash: -
|
118
|
+
hash: -36693563050523198
|
118
119
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
119
120
|
none: false
|
120
121
|
requirements:
|
@@ -123,7 +124,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
123
124
|
version: '0'
|
124
125
|
segments:
|
125
126
|
- 0
|
126
|
-
hash: -
|
127
|
+
hash: -36693563050523198
|
127
128
|
requirements: []
|
128
129
|
rubyforge_project:
|
129
130
|
rubygems_version: 1.8.23
|