micepad-cli 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (5) hide show
  1. checksums.yaml +7 -0
  2. data/README.md +233 -0
  3. data/bin/micepad +9 -0
  4. data/lib/micepad/version.rb +3 -0
  5. metadata +59 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 9229638d127cbe93e2b69b6e25b479a0f16e1f69539afba1a4b0774dda8d4965
4
+ data.tar.gz: 5ed680a03cf930eb45fb990c69e4ebaf8d3243da3ad5760a280032a3776f1149
5
+ SHA512:
6
+ metadata.gz: 70ddf32155abef413099f3ccdae3d2bb5d40025b9b32b8ec27a04fce88f5ee8926619c103ca87e0cb911574c1c1c362d194a77081546cf4c60e7143794e98b09
7
+ data.tar.gz: 92e14e491b4c1cd9a3e8cba4b283e8f03b3876de3cabf18e8f32e95ddfbc7f1c2c9c77e7d640098b09ad8ebad4e1de5bd37bfb814b7880faba51e2fb5e76a9c8
data/README.md ADDED
@@ -0,0 +1,233 @@
1
+ # Micepad CLI
2
+
3
+ Command-line interface for the [Micepad](https://micepad.co) event management platform. Manage events, participants, check-ins, campaigns, and more — right from your terminal.
4
+
5
+ ## How It Works
6
+
7
+ Micepad CLI is a thin client powered by [Terminalwire](https://terminalwire.com). All commands execute on the Micepad server via a WebSocket connection — the CLI itself contains no business logic. This means you always get the latest features without updating the gem.
8
+
9
+ ## Installation
10
+
11
+ **Requirements:** Ruby 3.0+
12
+
13
+ ### From RubyGems
14
+
15
+ ```bash
16
+ gem install micepad-cli
17
+ ```
18
+
19
+ ### From GitHub
20
+
21
+ ```bash
22
+ gem install specific_install
23
+ gem specific_install https://github.com/micepadteam/micepad-cli
24
+ ```
25
+
26
+ ### From source
27
+
28
+ ```bash
29
+ git clone https://github.com/micepadteam/micepad-cli.git
30
+ cd micepad-cli
31
+ gem build micepad-cli.gemspec
32
+ gem install ./micepad-cli-0.1.0.gem
33
+ ```
34
+
35
+ ## Quick Start
36
+
37
+ ```bash
38
+ # Authenticate (opens browser for authorization)
39
+ micepad login
40
+
41
+ # List your events
42
+ micepad events list
43
+
44
+ # Select an event to work with
45
+ micepad events use my-event-slug
46
+
47
+ # Check who you are and what's selected
48
+ micepad whoami
49
+
50
+ # See all available commands
51
+ micepad terminal tree
52
+ ```
53
+
54
+ ## Configuration
55
+
56
+ By default, the CLI connects to `wss://alpha.micepad.co/terminal`.
57
+
58
+ Override the server URL with the `MICEPAD_URL` environment variable:
59
+
60
+ ```bash
61
+ # Connect to production
62
+ MICEPAD_URL="wss://studio.micepad.co/terminal" micepad login
63
+
64
+ # Connect to local development server
65
+ MICEPAD_URL="ws://localhost:3000/terminal" micepad login
66
+
67
+ # Export for persistent use
68
+ export MICEPAD_URL="wss://studio.micepad.co/terminal"
69
+ ```
70
+
71
+ ## Commands
72
+
73
+ ### Authentication
74
+
75
+ | Command | Description |
76
+ |---------|-------------|
77
+ | `micepad login` | Authenticate via browser-based authorization |
78
+ | `micepad logout` | Clear session |
79
+ | `micepad whoami` | Show current user, account, and event |
80
+
81
+ ### Events
82
+
83
+ | Command | Description |
84
+ |---------|-------------|
85
+ | `micepad events list` | List all events in your account |
86
+ | `micepad events use SLUG` | Set the active event context |
87
+ | `micepad events current` | Show details of the active event |
88
+ | `micepad events stats` | Show event dashboard statistics |
89
+
90
+ ### Participants
91
+
92
+ | Command | Description |
93
+ |---------|-------------|
94
+ | `micepad pax list` | List participants (with filters) |
95
+ | `micepad pax show ID` | Show participant details |
96
+ | `micepad pax add` | Add a new participant |
97
+ | `micepad pax checkin ID` | Check in a participant |
98
+ | `micepad pax checkout ID` | Check out a participant |
99
+ | `micepad pax count` | Count participants by status |
100
+ | `micepad pax export` | Export participants to CSV |
101
+ | `micepad pax import FILE` | Import participants from CSV/Excel |
102
+
103
+ #### Filtering participants
104
+
105
+ ```bash
106
+ # Filter by RSVP status
107
+ micepad pax list --status confirmed
108
+
109
+ # Filter by check-in status
110
+ micepad pax list --checkin checked_in
111
+
112
+ # Filter by group
113
+ micepad pax list --group "VIP"
114
+
115
+ # Search by name or email
116
+ micepad pax list --search "john"
117
+
118
+ # Combine filters
119
+ micepad pax list --status confirmed --checkin not_checked_in --limit 100
120
+ ```
121
+
122
+ #### Importing participants
123
+
124
+ ```bash
125
+ # Show storage directory path
126
+ micepad pax import --storage-path
127
+
128
+ # Download import template
129
+ micepad pax import --template
130
+ micepad pax import --template --format xlsx
131
+
132
+ # Import from CSV (interactive — prompts for group, mappings, confirmation)
133
+ cp attendees.csv $(micepad pax import --storage-path)/
134
+ micepad pax import attendees.csv
135
+
136
+ # Import with options
137
+ micepad pax import attendees.csv --group "VIP" --action add --yes
138
+
139
+ # Dry run (validate only, no changes)
140
+ micepad pax import attendees.csv --dry-run
141
+
142
+ # Export failed rows
143
+ micepad pax import attendees.csv --errors-out errors.csv
144
+ ```
145
+
146
+ ### Check-ins
147
+
148
+ | Command | Description |
149
+ |---------|-------------|
150
+ | `micepad checkins stats` | Show check-in statistics with velocity |
151
+ | `micepad checkins stats --watch` | Live-refresh stats every 2 seconds |
152
+ | `micepad checkins recent` | Show recent check-in activity |
153
+
154
+ ### Campaigns
155
+
156
+ | Command | Description |
157
+ |---------|-------------|
158
+ | `micepad campaigns list` | List campaigns |
159
+ | `micepad campaigns create` | Create a new campaign |
160
+ | `micepad campaigns show ID` | Show campaign details |
161
+ | `micepad campaigns send ID` | Send a campaign |
162
+ | `micepad campaigns cancel ID` | Cancel a scheduled campaign |
163
+ | `micepad campaigns stats ID` | Show campaign delivery statistics |
164
+
165
+ ```bash
166
+ # List email campaigns only
167
+ micepad campaigns list --type email
168
+
169
+ # Create campaign from template
170
+ micepad campaigns create --type email --name "Welcome" --template tpl_xxxxx
171
+
172
+ # Watch delivery stats in real-time
173
+ micepad campaigns stats cmp_xxxxx --watch
174
+ ```
175
+
176
+ ### Templates
177
+
178
+ | Command | Description |
179
+ |---------|-------------|
180
+ | `micepad templates list` | List all templates |
181
+ | `micepad templates list --type email` | Filter by type (email, whatsapp) |
182
+
183
+ ### Groups
184
+
185
+ | Command | Description |
186
+ |---------|-------------|
187
+ | `micepad groups list` | List all groups |
188
+ | `micepad groups show NAME` | Show group details with RSVP breakdown |
189
+
190
+ ### Admin (super admin only)
191
+
192
+ | Command | Description |
193
+ |---------|-------------|
194
+ | `micepad admin dashboard` | Platform-wide statistics (users, DAU, MAU) |
195
+ | `micepad admin accounts` | List accounts |
196
+ | `micepad admin users` | List users |
197
+ | `micepad admin gatherings` | List all gatherings |
198
+ | `micepad admin subscriptions` | List active subscriptions |
199
+
200
+ ```bash
201
+ # Search accounts
202
+ micepad admin accounts --search "acme"
203
+
204
+ # Filter gatherings by status
205
+ micepad admin gatherings --status published --limit 50
206
+ ```
207
+
208
+ ### Meta
209
+
210
+ | Command | Description |
211
+ |---------|-------------|
212
+ | `micepad terminal tree` | Show full command tree |
213
+ | `micepad help` | Show top-level help |
214
+ | `micepad events help` | Show subcommand help |
215
+
216
+ ## Participant Identifiers
217
+
218
+ Several commands accept a participant identifier. You can use any of:
219
+
220
+ - **Prefix ID**: `pax_abc123`
221
+ - **Email**: `john@example.com`
222
+ - **Code**: the participant's registration code
223
+ - **QR Code**: the participant's QR code value
224
+
225
+ ```bash
226
+ micepad pax show pax_abc123
227
+ micepad pax show john@example.com
228
+ micepad pax checkin pax_abc123
229
+ ```
230
+
231
+ ## License
232
+
233
+ MIT
data/bin/micepad ADDED
@@ -0,0 +1,9 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require "terminalwire/client"
4
+ require "uri"
5
+
6
+ DEFAULT_URL = "wss://alpha.micepad.co/terminal"
7
+
8
+ url = URI(ENV.fetch("MICEPAD_URL", DEFAULT_URL))
9
+ Terminalwire::Client.websocket(url:, arguments: ARGV)
@@ -0,0 +1,3 @@
1
+ module Micepad
2
+ VERSION = "0.1.0"
3
+ end
metadata ADDED
@@ -0,0 +1,59 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: micepad-cli
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Micepad
8
+ bindir: bin
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: terminalwire-client
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - "~>"
17
+ - !ruby/object:Gem::Version
18
+ version: '0.3'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - "~>"
24
+ - !ruby/object:Gem::Version
25
+ version: '0.3'
26
+ description: Command-line interface for managing events, participants, check-ins,
27
+ and more on Micepad.
28
+ email:
29
+ - support@micepad.co
30
+ executables:
31
+ - micepad
32
+ extensions: []
33
+ extra_rdoc_files: []
34
+ files:
35
+ - README.md
36
+ - bin/micepad
37
+ - lib/micepad/version.rb
38
+ homepage: https://micepad.co
39
+ licenses:
40
+ - MIT
41
+ metadata: {}
42
+ rdoc_options: []
43
+ require_paths:
44
+ - lib
45
+ required_ruby_version: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: '3.0'
50
+ required_rubygems_version: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ requirements: []
56
+ rubygems_version: 3.6.9
57
+ specification_version: 4
58
+ summary: CLI for Micepad event management platform
59
+ test_files: []