1 | # Athom CLI
|
2 |
|
3 | This is the Command Line Interface for Homey App Development.
|
4 |
|
5 | ## Installation
|
6 |
|
7 | ```bash
|
8 | $ npm install -g athom-cli
|
9 | ```
|
10 |
|
11 | ## Usage
|
12 |
|
13 | ```bash
|
14 | $ athom --help
|
15 | athom <command>
|
16 |
|
17 | Commands:
|
18 | athom app App related commands
|
19 | athom homey Homey related commands
|
20 | athom ledring LED ring related commands
|
21 | athom login Log in with an Athom Account
|
22 | athom logout Log out the current user
|
23 |
|
24 | Options:
|
25 | --version Show version number
|
26 | --help Show help
|
27 | ```
|
28 |
|
29 | ### Examples
|
30 |
|
31 | ```bash
|
32 | $ athom login
|
33 |
|
34 | $ athom app create
|
35 |
|
36 | $ athom app validate
|
37 | $ athom app validate --level appstore
|
38 |
|
39 | $ athom app run
|
40 | $ athom app run --clean
|
41 | $ athom app run --path /path/to/my/app/folder
|
42 | $ athom app install
|
43 | $ athom app version patch
|
44 | $ athom app build
|
45 |
|
46 | $ athom app driver create
|
47 |
|
48 | $ athom homey list
|
49 | $ athom homey select
|
50 | $ athom homey unselect
|
51 | ```
|
52 |
|
53 | ## Plugins
|
54 |
|
55 | Athom CLI ships with built-in plugins to make the development workflow easier. Plugins must be defined in `/.homeyplugins.json` in your app's root, and are executed in order.
|
56 |
|
57 | ### Compose
|
58 | The `compose` plugin copies & merges files, which is useful for very large Homey Apps.
|
59 |
|
60 | For documentation, refer to [AppPluginCompose](lib/AppPluginCompose/index.js).
|
61 |
|
62 | ### Z-Wave
|
63 | The `zwave` plugin installs [homey-meshdriver](https://www.npmjs.com/package/homey-meshdriver).
|
64 |
|
65 | For documentation, refer to [AppPluginZwave](lib/AppPluginZwave/index.js).
|
66 |
|
67 | ### Zigbee
|
68 | The `zigbee` plugin installs [homey-meshdriver](https://www.npmjs.com/package/homey-meshdriver).
|
69 |
|
70 | For documentation, refer to [AppPluginZigbee](lib/AppPluginZigbee/index.js).
|
71 |
|
72 | ### RF
|
73 | The `rf` plugin installs [homey-rfdriver](https://www.npmjs.com/package/homey-rfdriver), and copies pairing templates to `/.homeycompose/`.
|
74 |
|
75 | For documentation, refer to [AppPluginRF](lib/AppPluginRF/index.js).
|
76 |
|
77 | ### Log
|
78 | The `log` plugin installs [homey-log](https://www.npmjs.com/package/homey-log). You must still require the module in the app yourself:
|
79 |
|
80 | ```
|
81 | const { Log } = require('homey-log');
|
82 | ```
|
83 |
|
84 | Don't forget to add the `HOMEY_LOG_URL` variable to your `env.json`. |
\ | No newline at end of file |