@learnpack/learnpack 2.0.2 → 2.0.3
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +385 -55
- package/bin/run +1 -1
- package/oclif.manifest.json +1 -0
- package/package.json +2 -1
- package/src/commands/clean.ts +29 -29
- package/src/commands/download.ts +62 -62
- package/src/commands/init.ts +172 -172
- package/src/commands/login.ts +42 -42
- package/src/commands/logout.ts +43 -43
- package/src/commands/publish.ts +107 -107
- package/src/commands/start.ts +234 -234
- package/src/commands/test.ts +85 -85
- package/src/managers/config/exercise.ts +302 -302
- package/src/managers/config/index.ts +412 -412
- package/src/managers/file.ts +169 -169
- package/src/managers/server/index.ts +69 -69
- package/src/managers/server/routes.ts +255 -255
- package/src/managers/test.ts +83 -83
- package/src/plugin/plugin.ts +94 -94
- package/src/plugin/utils.ts +87 -87
- package/src/utils/BaseCommand.ts +48 -48
- package/src/utils/api.ts +194 -194
- package/src/utils/fileQueue.ts +198 -198
package/README.md
CHANGED
@@ -1,56 +1,71 @@
|
|
1
|
-
# learnpack
|
2
|
-
|
3
|
-
Create, sell or download and take learning amazing learning packages
|
4
|
-
|
5
|
-
[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io)
|
6
|
-
[![Version](https://img.shields.io/npm/v/learnpack.svg)](https://npmjs.org/package/learnpack)
|
7
|
-
[![Downloads/week](https://img.shields.io/npm/dw/learnpack.svg)](https://npmjs.org/package/learnpack)
|
8
|
-
[![License](https://img.shields.io/npm/l/learnpack.svg)](https://github.com/learnpack/learnpack-cli/blob/master/package.json)
|
9
|
-
|
1
|
+
# learnpack
|
2
|
+
|
3
|
+
Create, sell or download and take learning amazing learning packages
|
4
|
+
|
5
|
+
[![oclif](https://img.shields.io/badge/cli-oclif-brightgreen.svg)](https://oclif.io)
|
6
|
+
[![Version](https://img.shields.io/npm/v/learnpack.svg)](https://npmjs.org/package/learnpack)
|
7
|
+
[![Downloads/week](https://img.shields.io/npm/dw/learnpack.svg)](https://npmjs.org/package/learnpack)
|
8
|
+
[![License](https://img.shields.io/npm/l/learnpack.svg)](https://github.com/learnpack/learnpack-cli/blob/master/package.json)
|
9
|
+
|
10
10
|
<!-- toc -->
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
11
|
+
* [learnpack](#learnpack)
|
12
|
+
* [Usage](#usage)
|
13
|
+
* [Commands](#commands)
|
14
|
+
<!-- tocstop -->
|
15
|
+
|
16
|
+
- [learnpack](#learnpack)
|
17
|
+
- [Usage](#usage)
|
18
|
+
- [Commands](#commands)
|
19
|
+
<!-- tocstop -->
|
20
|
+
|
21
|
+
# Usage
|
22
|
+
|
19
23
|
<!-- usage -->
|
20
|
-
|
21
24
|
```sh-session
|
22
25
|
$ npm install -g @learnpack/learnpack
|
23
26
|
$ learnpack COMMAND
|
24
27
|
running command...
|
25
28
|
$ learnpack (-v|--version|version)
|
26
|
-
@learnpack/learnpack/2.0.
|
29
|
+
@learnpack/learnpack/2.0.3 win32-x64 node-v16.14.0
|
27
30
|
$ learnpack --help [COMMAND]
|
28
31
|
USAGE
|
29
32
|
$ learnpack COMMAND
|
30
33
|
...
|
31
34
|
```
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
35
|
+
<!-- usagestop -->
|
36
|
+
|
37
|
+
```sh-session
|
38
|
+
$ npm install -g @learnpack/learnpack
|
39
|
+
$ learnpack COMMAND
|
40
|
+
running command...
|
41
|
+
$ learnpack (-v|--version|version)
|
42
|
+
@learnpack/learnpack/2.0.2 win32-x64 node-v16.14.0
|
43
|
+
$ learnpack --help [COMMAND]
|
44
|
+
USAGE
|
45
|
+
$ learnpack COMMAND
|
46
|
+
...
|
47
|
+
```
|
48
|
+
|
49
|
+
<!-- usagestop -->
|
50
|
+
|
51
|
+
# Commands
|
52
|
+
|
37
53
|
<!-- commands -->
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
- [`learnpack test [EXERCISESLUG]`](#learnpack-test-exerciseslug)
|
54
|
+
* [`learnpack audit`](#learnpack-audit)
|
55
|
+
* [`learnpack clean`](#learnpack-clean)
|
56
|
+
* [`learnpack download [PACKAGE]`](#learnpack-download-package)
|
57
|
+
* [`learnpack help [COMMAND]`](#learnpack-help-command)
|
58
|
+
* [`learnpack init`](#learnpack-init)
|
59
|
+
* [`learnpack login [PACKAGE]`](#learnpack-login-package)
|
60
|
+
* [`learnpack logout [PACKAGE]`](#learnpack-logout-package)
|
61
|
+
* [`learnpack plugins`](#learnpack-plugins)
|
62
|
+
* [`learnpack plugins:install PLUGIN...`](#learnpack-pluginsinstall-plugin)
|
63
|
+
* [`learnpack plugins:link PLUGIN`](#learnpack-pluginslink-plugin)
|
64
|
+
* [`learnpack plugins:uninstall PLUGIN...`](#learnpack-pluginsuninstall-plugin)
|
65
|
+
* [`learnpack plugins:update`](#learnpack-pluginsupdate)
|
66
|
+
* [`learnpack publish [PACKAGE]`](#learnpack-publish-package)
|
67
|
+
* [`learnpack start`](#learnpack-start)
|
68
|
+
* [`learnpack test [EXERCISESLUG]`](#learnpack-test-exerciseslug)
|
54
69
|
|
55
70
|
## `learnpack audit`
|
56
71
|
|
@@ -67,7 +82,7 @@ DESCRIPTION
|
|
67
82
|
2. The command learnpack clean has been run. (Error)
|
68
83
|
3. If a markdown or test file doesn't have any content. (Error)
|
69
84
|
4. The links are accessing to valid servers. (Error)
|
70
|
-
5. The relative images are working (If they have the shortest path to the image or if the images exists in the
|
85
|
+
5. The relative images are working (If they have the shortest path to the image or if the images exists in the
|
71
86
|
assets). (Error)
|
72
87
|
6. The external images are working (If they are pointing to a valid server). (Error)
|
73
88
|
7. The exercises directory names are valid. (Error)
|
@@ -78,7 +93,7 @@ DESCRIPTION
|
|
78
93
|
12. If there is a file within the exercises folder but not inside of any particular exercise's folder. (Warning)
|
79
94
|
```
|
80
95
|
|
81
|
-
_See code: [src\commands\audit.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.
|
96
|
+
_See code: [src\commands\audit.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.3/src\commands\audit.ts)_
|
82
97
|
|
83
98
|
## `learnpack clean`
|
84
99
|
|
@@ -93,7 +108,7 @@ DESCRIPTION
|
|
93
108
|
Extra documentation goes here
|
94
109
|
```
|
95
110
|
|
96
|
-
_See code: [src\commands\clean.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.
|
111
|
+
_See code: [src\commands\clean.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.3/src\commands\clean.ts)_
|
97
112
|
|
98
113
|
## `learnpack download [PACKAGE]`
|
99
114
|
|
@@ -111,7 +126,7 @@ DESCRIPTION
|
|
111
126
|
Extra documentation goes here
|
112
127
|
```
|
113
128
|
|
114
|
-
_See code: [src\commands\download.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.
|
129
|
+
_See code: [src\commands\download.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.3/src\commands\download.ts)_
|
115
130
|
|
116
131
|
## `learnpack help [COMMAND]`
|
117
132
|
|
@@ -142,7 +157,7 @@ OPTIONS
|
|
142
157
|
-h, --grading show CLI help
|
143
158
|
```
|
144
159
|
|
145
|
-
_See code: [src\commands\init.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.
|
160
|
+
_See code: [src\commands\init.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.3/src\commands\init.ts)_
|
146
161
|
|
147
162
|
## `learnpack login [PACKAGE]`
|
148
163
|
|
@@ -160,7 +175,7 @@ DESCRIPTION
|
|
160
175
|
Extra documentation goes here
|
161
176
|
```
|
162
177
|
|
163
|
-
_See code: [src\commands\login.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.
|
178
|
+
_See code: [src\commands\login.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.3/src\commands\login.ts)_
|
164
179
|
|
165
180
|
## `learnpack logout [PACKAGE]`
|
166
181
|
|
@@ -178,7 +193,7 @@ DESCRIPTION
|
|
178
193
|
Extra documentation goes here
|
179
194
|
```
|
180
195
|
|
181
|
-
_See code: [src\commands\logout.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.
|
196
|
+
_See code: [src\commands\logout.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.3/src\commands\logout.ts)_
|
182
197
|
|
183
198
|
## `learnpack plugins`
|
184
199
|
|
@@ -218,15 +233,15 @@ DESCRIPTION
|
|
218
233
|
|
219
234
|
Installation of a user-installed plugin will override a core plugin.
|
220
235
|
|
221
|
-
e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
|
222
|
-
will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
|
236
|
+
e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
|
237
|
+
will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
|
223
238
|
the CLI without the need to patch and update the whole CLI.
|
224
239
|
|
225
240
|
ALIASES
|
226
241
|
$ learnpack plugins:add
|
227
242
|
|
228
243
|
EXAMPLES
|
229
|
-
$ learnpack plugins:install myplugin
|
244
|
+
$ learnpack plugins:install myplugin
|
230
245
|
$ learnpack plugins:install https://github.com/someuser/someplugin
|
231
246
|
$ learnpack plugins:install someuser/someplugin
|
232
247
|
```
|
@@ -251,7 +266,7 @@ OPTIONS
|
|
251
266
|
DESCRIPTION
|
252
267
|
Installation of a linked plugin will override a user-installed or core plugin.
|
253
268
|
|
254
|
-
e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
|
269
|
+
e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
|
255
270
|
command will override the user-installed or core plugin implementation. This is useful for development work.
|
256
271
|
|
257
272
|
EXAMPLE
|
@@ -313,7 +328,7 @@ DESCRIPTION
|
|
313
328
|
Extra documentation goes here
|
314
329
|
```
|
315
330
|
|
316
|
-
_See code: [src\commands\publish.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.
|
331
|
+
_See code: [src\commands\publish.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.3/src\commands\publish.ts)_
|
317
332
|
|
318
333
|
## `learnpack start`
|
319
334
|
|
@@ -334,7 +349,7 @@ OPTIONS
|
|
334
349
|
-w, --watch Watch for file changes
|
335
350
|
```
|
336
351
|
|
337
|
-
_See code: [src\commands\start.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.
|
352
|
+
_See code: [src\commands\start.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.3/src\commands\start.ts)_
|
338
353
|
|
339
354
|
## `learnpack test [EXERCISESLUG]`
|
340
355
|
|
@@ -348,6 +363,321 @@ ARGUMENTS
|
|
348
363
|
EXERCISESLUG The name of the exercise to test
|
349
364
|
```
|
350
365
|
|
351
|
-
_See code: [src\commands\test.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.
|
352
|
-
|
366
|
+
_See code: [src\commands\test.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.3/src\commands\test.ts)_
|
367
|
+
<!-- commandsstop -->
|
368
|
+
|
369
|
+
- [`learnpack audit`](#learnpack-audit)
|
370
|
+
- [`learnpack clean`](#learnpack-clean)
|
371
|
+
- [`learnpack download [PACKAGE]`](#learnpack-download-package)
|
372
|
+
- [`learnpack help [COMMAND]`](#learnpack-help-command)
|
373
|
+
- [`learnpack init`](#learnpack-init)
|
374
|
+
- [`learnpack login [PACKAGE]`](#learnpack-login-package)
|
375
|
+
- [`learnpack logout [PACKAGE]`](#learnpack-logout-package)
|
376
|
+
- [`learnpack plugins`](#learnpack-plugins)
|
377
|
+
- [`learnpack plugins:install PLUGIN...`](#learnpack-pluginsinstall-plugin)
|
378
|
+
- [`learnpack plugins:link PLUGIN`](#learnpack-pluginslink-plugin)
|
379
|
+
- [`learnpack plugins:uninstall PLUGIN...`](#learnpack-pluginsuninstall-plugin)
|
380
|
+
- [`learnpack plugins:update`](#learnpack-pluginsupdate)
|
381
|
+
- [`learnpack publish [PACKAGE]`](#learnpack-publish-package)
|
382
|
+
- [`learnpack start`](#learnpack-start)
|
383
|
+
- [`learnpack test [EXERCISESLUG]`](#learnpack-test-exerciseslug)
|
384
|
+
|
385
|
+
## `learnpack audit`
|
386
|
+
|
387
|
+
learnpack audit is the command in charge of creating an auditory of the repository
|
388
|
+
|
389
|
+
```
|
390
|
+
USAGE
|
391
|
+
$ learnpack audit
|
392
|
+
|
393
|
+
DESCRIPTION
|
394
|
+
...
|
395
|
+
learnpack audit checks for the following information in a repository:
|
396
|
+
1. The configuration object has slug, repository and description. (Error)
|
397
|
+
2. The command learnpack clean has been run. (Error)
|
398
|
+
3. If a markdown or test file doesn't have any content. (Error)
|
399
|
+
4. The links are accessing to valid servers. (Error)
|
400
|
+
5. The relative images are working (If they have the shortest path to the image or if the images exists in the
|
401
|
+
assets). (Error)
|
402
|
+
6. The external images are working (If they are pointing to a valid server). (Error)
|
403
|
+
7. The exercises directory names are valid. (Error)
|
404
|
+
8. If an exercise doesn't have a README file. (Error)
|
405
|
+
9. The exercises array (Of the config file) has content. (Error)
|
406
|
+
10. The exercses have the same translations. (Warning)
|
407
|
+
11. The .gitignore file exists. (Warning)
|
408
|
+
12. If there is a file within the exercises folder but not inside of any particular exercise's folder. (Warning)
|
409
|
+
```
|
410
|
+
|
411
|
+
_See code: [src\commands\audit.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.2/src\commands\audit.ts)_
|
412
|
+
|
413
|
+
## `learnpack clean`
|
414
|
+
|
415
|
+
Clean the configuration object
|
416
|
+
|
417
|
+
```
|
418
|
+
USAGE
|
419
|
+
$ learnpack clean
|
420
|
+
|
421
|
+
DESCRIPTION
|
422
|
+
...
|
423
|
+
Extra documentation goes here
|
424
|
+
```
|
425
|
+
|
426
|
+
_See code: [src\commands\clean.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.2/src\commands\clean.ts)_
|
427
|
+
|
428
|
+
## `learnpack download [PACKAGE]`
|
429
|
+
|
430
|
+
Describe the command here
|
431
|
+
|
432
|
+
```
|
433
|
+
USAGE
|
434
|
+
$ learnpack download [PACKAGE]
|
435
|
+
|
436
|
+
ARGUMENTS
|
437
|
+
PACKAGE The unique string that identifies this package on learnpack
|
438
|
+
|
439
|
+
DESCRIPTION
|
440
|
+
...
|
441
|
+
Extra documentation goes here
|
442
|
+
```
|
443
|
+
|
444
|
+
_See code: [src\commands\download.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.2/src\commands\download.ts)_
|
445
|
+
|
446
|
+
## `learnpack help [COMMAND]`
|
447
|
+
|
448
|
+
display help for learnpack
|
449
|
+
|
450
|
+
```
|
451
|
+
USAGE
|
452
|
+
$ learnpack help [COMMAND]
|
453
|
+
|
454
|
+
ARGUMENTS
|
455
|
+
COMMAND command to show help for
|
456
|
+
|
457
|
+
OPTIONS
|
458
|
+
--all see all commands in CLI
|
459
|
+
```
|
460
|
+
|
461
|
+
_See code: [@oclif/plugin-help](https://github.com/oclif/plugin-help/blob/v3.1.0/src\commands\help.ts)_
|
462
|
+
|
463
|
+
## `learnpack init`
|
464
|
+
|
465
|
+
Create a new learning package: Book, Tutorial or Exercise
|
466
|
+
|
467
|
+
```
|
468
|
+
USAGE
|
469
|
+
$ learnpack init
|
470
|
+
|
471
|
+
OPTIONS
|
472
|
+
-h, --grading show CLI help
|
473
|
+
```
|
474
|
+
|
475
|
+
_See code: [src\commands\init.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.2/src\commands\init.ts)_
|
476
|
+
|
477
|
+
## `learnpack login [PACKAGE]`
|
478
|
+
|
479
|
+
Describe the command here
|
480
|
+
|
481
|
+
```
|
482
|
+
USAGE
|
483
|
+
$ learnpack login [PACKAGE]
|
484
|
+
|
485
|
+
ARGUMENTS
|
486
|
+
PACKAGE The unique string that identifies this package on learnpack
|
487
|
+
|
488
|
+
DESCRIPTION
|
489
|
+
...
|
490
|
+
Extra documentation goes here
|
491
|
+
```
|
492
|
+
|
493
|
+
_See code: [src\commands\login.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.2/src\commands\login.ts)_
|
494
|
+
|
495
|
+
## `learnpack logout [PACKAGE]`
|
496
|
+
|
497
|
+
Describe the command here
|
498
|
+
|
499
|
+
```
|
500
|
+
USAGE
|
501
|
+
$ learnpack logout [PACKAGE]
|
502
|
+
|
503
|
+
ARGUMENTS
|
504
|
+
PACKAGE The unique string that identifies this package on learnpack
|
505
|
+
|
506
|
+
DESCRIPTION
|
507
|
+
...
|
508
|
+
Extra documentation goes here
|
509
|
+
```
|
510
|
+
|
511
|
+
_See code: [src\commands\logout.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.2/src\commands\logout.ts)_
|
512
|
+
|
513
|
+
## `learnpack plugins`
|
514
|
+
|
515
|
+
list installed plugins
|
516
|
+
|
517
|
+
```
|
518
|
+
USAGE
|
519
|
+
$ learnpack plugins
|
520
|
+
|
521
|
+
OPTIONS
|
522
|
+
--core show core plugins
|
523
|
+
|
524
|
+
EXAMPLE
|
525
|
+
$ learnpack plugins
|
526
|
+
```
|
527
|
+
|
528
|
+
_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v1.8.0/src\commands\plugins\index.ts)_
|
529
|
+
|
530
|
+
## `learnpack plugins:install PLUGIN...`
|
531
|
+
|
532
|
+
installs a plugin into the CLI
|
533
|
+
|
534
|
+
```
|
535
|
+
USAGE
|
536
|
+
$ learnpack plugins:install PLUGIN...
|
537
|
+
|
538
|
+
ARGUMENTS
|
539
|
+
PLUGIN plugin to install
|
540
|
+
|
541
|
+
OPTIONS
|
542
|
+
-f, --force yarn install with force flag
|
543
|
+
-h, --help show CLI help
|
544
|
+
-v, --verbose
|
545
|
+
|
546
|
+
DESCRIPTION
|
547
|
+
Can be installed from npm or a git url.
|
548
|
+
|
549
|
+
Installation of a user-installed plugin will override a core plugin.
|
550
|
+
|
551
|
+
e.g. If you have a core plugin that has a 'hello' command, installing a user-installed plugin with a 'hello' command
|
552
|
+
will override the core plugin implementation. This is useful if a user needs to update core plugin functionality in
|
553
|
+
the CLI without the need to patch and update the whole CLI.
|
554
|
+
|
555
|
+
ALIASES
|
556
|
+
$ learnpack plugins:add
|
557
|
+
|
558
|
+
EXAMPLES
|
559
|
+
$ learnpack plugins:install myplugin
|
560
|
+
$ learnpack plugins:install https://github.com/someuser/someplugin
|
561
|
+
$ learnpack plugins:install someuser/someplugin
|
562
|
+
```
|
563
|
+
|
564
|
+
_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v1.8.0/src\commands\plugins\install.ts)_
|
565
|
+
|
566
|
+
## `learnpack plugins:link PLUGIN`
|
567
|
+
|
568
|
+
links a plugin into the CLI for development
|
569
|
+
|
570
|
+
```
|
571
|
+
USAGE
|
572
|
+
$ learnpack plugins:link PLUGIN
|
573
|
+
|
574
|
+
ARGUMENTS
|
575
|
+
PATH [default: .] path to plugin
|
576
|
+
|
577
|
+
OPTIONS
|
578
|
+
-h, --help show CLI help
|
579
|
+
-v, --verbose
|
580
|
+
|
581
|
+
DESCRIPTION
|
582
|
+
Installation of a linked plugin will override a user-installed or core plugin.
|
583
|
+
|
584
|
+
e.g. If you have a user-installed or core plugin that has a 'hello' command, installing a linked plugin with a 'hello'
|
585
|
+
command will override the user-installed or core plugin implementation. This is useful for development work.
|
586
|
+
|
587
|
+
EXAMPLE
|
588
|
+
$ learnpack plugins:link myplugin
|
589
|
+
```
|
590
|
+
|
591
|
+
_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v1.8.0/src\commands\plugins\link.ts)_
|
592
|
+
|
593
|
+
## `learnpack plugins:uninstall PLUGIN...`
|
594
|
+
|
595
|
+
removes a plugin from the CLI
|
596
|
+
|
597
|
+
```
|
598
|
+
USAGE
|
599
|
+
$ learnpack plugins:uninstall PLUGIN...
|
600
|
+
|
601
|
+
ARGUMENTS
|
602
|
+
PLUGIN plugin to uninstall
|
603
|
+
|
604
|
+
OPTIONS
|
605
|
+
-h, --help show CLI help
|
606
|
+
-v, --verbose
|
607
|
+
|
608
|
+
ALIASES
|
609
|
+
$ learnpack plugins:unlink
|
610
|
+
$ learnpack plugins:remove
|
611
|
+
```
|
612
|
+
|
613
|
+
_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v1.8.0/src\commands\plugins\uninstall.ts)_
|
614
|
+
|
615
|
+
## `learnpack plugins:update`
|
616
|
+
|
617
|
+
update installed plugins
|
618
|
+
|
619
|
+
```
|
620
|
+
USAGE
|
621
|
+
$ learnpack plugins:update
|
622
|
+
|
623
|
+
OPTIONS
|
624
|
+
-h, --help show CLI help
|
625
|
+
-v, --verbose
|
626
|
+
```
|
627
|
+
|
628
|
+
_See code: [@oclif/plugin-plugins](https://github.com/oclif/plugin-plugins/blob/v1.8.0/src\commands\plugins\update.ts)_
|
629
|
+
|
630
|
+
## `learnpack publish [PACKAGE]`
|
631
|
+
|
632
|
+
Describe the command here
|
633
|
+
|
634
|
+
```
|
635
|
+
USAGE
|
636
|
+
$ learnpack publish [PACKAGE]
|
637
|
+
|
638
|
+
ARGUMENTS
|
639
|
+
PACKAGE The unique string that identifies this package on learnpack
|
640
|
+
|
641
|
+
DESCRIPTION
|
642
|
+
...
|
643
|
+
Extra documentation goes here
|
644
|
+
```
|
645
|
+
|
646
|
+
_See code: [src\commands\publish.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.2/src\commands\publish.ts)_
|
647
|
+
|
648
|
+
## `learnpack start`
|
649
|
+
|
650
|
+
Runs a small server with all the exercise instructions
|
651
|
+
|
652
|
+
```
|
653
|
+
USAGE
|
654
|
+
$ learnpack start
|
655
|
+
|
656
|
+
OPTIONS
|
657
|
+
-D, --disableGrading disble grading functionality
|
658
|
+
-d, --debug debugger mode for more verbage
|
659
|
+
-e, --editor=standalone|gitpod [standalone, gitpod]
|
660
|
+
-g, --grading=isolated|incremental [isolated, incremental]
|
661
|
+
-h, --host=host server host
|
662
|
+
-p, --port=port server port
|
663
|
+
-v, --version=version E.g: 1.0.1
|
664
|
+
-w, --watch Watch for file changes
|
665
|
+
```
|
666
|
+
|
667
|
+
_See code: [src\commands\start.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.2/src\commands\start.ts)_
|
668
|
+
|
669
|
+
## `learnpack test [EXERCISESLUG]`
|
670
|
+
|
671
|
+
Test exercises
|
672
|
+
|
673
|
+
```
|
674
|
+
USAGE
|
675
|
+
$ learnpack test [EXERCISESLUG]
|
676
|
+
|
677
|
+
ARGUMENTS
|
678
|
+
EXERCISESLUG The name of the exercise to test
|
679
|
+
```
|
680
|
+
|
681
|
+
_See code: [src\commands\test.ts](https://github.com/learnpack/learnpack-cli/blob/v2.0.2/src\commands\test.ts)_
|
682
|
+
|
353
683
|
<!-- commandsstop -->
|
package/bin/run
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":"2.0.3","commands":{"audit":{"id":"audit","description":"learnpack audit is the command in charge of creating an auditory of the repository\n...\nlearnpack audit checks for the following information in a repository:\n 1. The configuration object has slug, repository and description. (Error)\n 2. The command learnpack clean has been run. (Error)\n 3. If a markdown or test file doesn't have any content. (Error)\n 4. The links are accessing to valid servers. (Error)\n 5. The relative images are working (If they have the shortest path to the image or if the images exists in the assets). (Error)\n 6. The external images are working (If they are pointing to a valid server). (Error)\n 7. The exercises directory names are valid. (Error)\n 8. If an exercise doesn't have a README file. (Error)\n 9. The exercises array (Of the config file) has content. (Error)\n 10. The exercses have the same translations. (Warning)\n 11. The .gitignore file exists. (Warning)\n 12. If there is a file within the exercises folder but not inside of any particular exercise's folder. (Warning)\n","pluginName":"@learnpack/learnpack","pluginType":"core","aliases":[],"flags":{},"args":[]},"clean":{"id":"clean","description":"Clean the configuration object\n ...\n Extra documentation goes here\n ","pluginName":"@learnpack/learnpack","pluginType":"core","aliases":[],"flags":{},"args":[]},"download":{"id":"download","description":"Describe the command here\n...\nExtra documentation goes here\n","pluginName":"@learnpack/learnpack","pluginType":"core","aliases":[],"flags":{},"args":[{"name":"package","description":"The unique string that identifies this package on learnpack","required":false,"hidden":false}]},"init":{"id":"init","description":"Create a new learning package: Book, Tutorial or Exercise","pluginName":"@learnpack/learnpack","pluginType":"core","aliases":[],"flags":{"grading":{"name":"grading","type":"boolean","char":"h","description":"show CLI help","allowNo":false}},"args":[]},"login":{"id":"login","description":"Describe the command here\n ...\n Extra documentation goes here\n ","pluginName":"@learnpack/learnpack","pluginType":"core","aliases":[],"flags":{},"args":[{"name":"package","description":"The unique string that identifies this package on learnpack","required":false,"hidden":false}]},"logout":{"id":"logout","description":"Describe the command here\n ...\n Extra documentation goes here\n ","pluginName":"@learnpack/learnpack","pluginType":"core","aliases":[],"flags":{},"args":[{"name":"package","description":"The unique string that identifies this package on learnpack","required":false,"hidden":false}]},"publish":{"id":"publish","description":"Describe the command here\n ...\n Extra documentation goes here\n ","pluginName":"@learnpack/learnpack","pluginType":"core","aliases":[],"flags":{},"args":[{"name":"package","description":"The unique string that identifies this package on learnpack","required":false,"hidden":false}]},"start":{"id":"start","description":"Runs a small server with all the exercise instructions","pluginName":"@learnpack/learnpack","pluginType":"core","aliases":[],"flags":{"port":{"name":"port","type":"option","char":"p","description":"server port"},"host":{"name":"host","type":"option","char":"h","description":"server host"},"disableGrading":{"name":"disableGrading","type":"boolean","char":"D","description":"disble grading functionality","allowNo":false},"watch":{"name":"watch","type":"boolean","char":"w","description":"Watch for file changes","allowNo":false},"editor":{"name":"editor","type":"option","char":"e","description":"[standalone, gitpod]","options":["standalone","gitpod"]},"version":{"name":"version","type":"option","char":"v","description":"E.g: 1.0.1"},"grading":{"name":"grading","type":"option","char":"g","description":"[isolated, incremental]","options":["isolated","incremental"]},"debug":{"name":"debug","type":"boolean","char":"d","description":"debugger mode for more verbage","allowNo":false}},"args":[]},"test":{"id":"test","description":"Test exercises","pluginName":"@learnpack/learnpack","pluginType":"core","aliases":[],"flags":{},"args":[{"name":"exerciseSlug","description":"The name of the exercise to test","required":false,"hidden":false}]}}}
|
package/package.json
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
{
|
2
2
|
"name": "@learnpack/learnpack",
|
3
3
|
"description": "Create, sell or download and take learning amazing learning packages",
|
4
|
-
"version": "2.0.
|
4
|
+
"version": "2.0.3",
|
5
5
|
"author": "Alejandro Sanchez @alesanchezr",
|
6
6
|
"bin": {
|
7
7
|
"learnpack": "bin/run"
|
@@ -117,6 +117,7 @@
|
|
117
117
|
},
|
118
118
|
"scripts": {
|
119
119
|
"postpack": "rm -f oclif.manifest.json && eslint . --ext .ts --config .eslintrc",
|
120
|
+
"prepack": "rm -rf lib && tsc -b && oclif-dev manifest && oclif-dev readme",
|
120
121
|
"pre": "node ./test/precommit/index.ts",
|
121
122
|
"test": "NODE_ENV=test nyc --extension .ts mocha --forbid-only \"test/**/*.test.ts\"",
|
122
123
|
"version": "oclif-dev readme && git add README.md",
|
package/src/commands/clean.ts
CHANGED
@@ -1,29 +1,29 @@
|
|
1
|
-
// import {flags} from '@oclif/command'
|
2
|
-
import Console from "../utils/console";
|
3
|
-
import SessionCommand from "../utils/SessionCommand";
|
4
|
-
|
5
|
-
class CleanCommand extends SessionCommand {
|
6
|
-
static description = `Clean the configuration object
|
7
|
-
...
|
8
|
-
Extra documentation goes here
|
9
|
-
`;
|
10
|
-
|
11
|
-
static flags: any = {
|
12
|
-
// name: flags.string({char: 'n', description: 'name to print'}),
|
13
|
-
};
|
14
|
-
|
15
|
-
async init() {
|
16
|
-
const { flags } = this.parse(CleanCommand);
|
17
|
-
await this.initSession(flags);
|
18
|
-
}
|
19
|
-
|
20
|
-
async run() {
|
21
|
-
const { flags } = this.parse(CleanCommand);
|
22
|
-
|
23
|
-
this.configManager?.clean();
|
24
|
-
|
25
|
-
Console.success("Package cleaned successfully, ready to publish");
|
26
|
-
}
|
27
|
-
}
|
28
|
-
|
29
|
-
export default CleanCommand;
|
1
|
+
// import {flags} from '@oclif/command'
|
2
|
+
import Console from "../utils/console";
|
3
|
+
import SessionCommand from "../utils/SessionCommand";
|
4
|
+
|
5
|
+
class CleanCommand extends SessionCommand {
|
6
|
+
static description = `Clean the configuration object
|
7
|
+
...
|
8
|
+
Extra documentation goes here
|
9
|
+
`;
|
10
|
+
|
11
|
+
static flags: any = {
|
12
|
+
// name: flags.string({char: 'n', description: 'name to print'}),
|
13
|
+
};
|
14
|
+
|
15
|
+
async init() {
|
16
|
+
const { flags } = this.parse(CleanCommand);
|
17
|
+
await this.initSession(flags);
|
18
|
+
}
|
19
|
+
|
20
|
+
async run() {
|
21
|
+
const { flags } = this.parse(CleanCommand);
|
22
|
+
|
23
|
+
this.configManager?.clean();
|
24
|
+
|
25
|
+
Console.success("Package cleaned successfully, ready to publish");
|
26
|
+
}
|
27
|
+
}
|
28
|
+
|
29
|
+
export default CleanCommand;
|