@haxtheweb/create 11.0.7 → 25.0.2

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 (25) hide show
  1. package/README.md +7 -0
  2. package/dist/create.js +9 -5
  3. package/dist/docs/hax.1 +248 -76
  4. package/dist/lib/programs/party.js +88 -42
  5. package/dist/lib/programs/site.js +319 -0
  6. package/dist/lib/wc-registry.json +1 -1
  7. package/dist/templates/sitedotfiles/_github_workflows_deploy.yml +63 -0
  8. package/dist/templates/sitedotfiles/_gitlab-ci.yml +62 -0
  9. package/dist/templates/sitedotfiles/_netlifyignore +24 -0
  10. package/dist/templates/sitedotfiles/_vercelignore +34 -0
  11. package/dist/templates/sitetheme/base-theme.js +9 -0
  12. package/dist/templates/webcomponent/hax/_github/workflows/main.yml +0 -8
  13. package/dist/templates/webcomponent/hax/locales/webcomponent.bn.haxProperties.json +16 -0
  14. package/dist/templates/webcomponent/hax/locales/webcomponent.bn.json +3 -0
  15. package/dist/templates/webcomponent/hax/locales/webcomponent.fr.haxProperties.json +16 -0
  16. package/dist/templates/webcomponent/hax/locales/webcomponent.fr.json +3 -0
  17. package/dist/templates/webcomponent/hax/locales/webcomponent.ja.haxProperties.json +16 -0
  18. package/dist/templates/webcomponent/hax/locales/webcomponent.ja.json +3 -0
  19. package/dist/templates/webcomponent/hax/locales/webcomponent.pt.haxProperties.json +16 -0
  20. package/dist/templates/webcomponent/hax/locales/webcomponent.pt.json +3 -0
  21. package/dist/templates/webcomponent/hax/locales/webcomponent.ru.haxProperties.json +16 -0
  22. package/dist/templates/webcomponent/hax/locales/webcomponent.ru.json +3 -0
  23. package/dist/templates/webcomponent/hax/package.json +3 -3
  24. package/dist/templates/webcomponent/hax/webcomponent.js +0 -1
  25. package/package.json +5 -4
package/README.md CHANGED
@@ -1,4 +1,9 @@
1
+ [![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
2
+ [![OpenSSF Scorecard](https://api.securityscorecards.dev/projects/github.com/haxtheweb/create/badge)](https://securityscorecards.dev/viewer/?uri=github.com/haxtheweb/create)
3
+ [![Community Support](https://badgen.net/badge/support/community/cyan?icon=awesome)](/SUPPORT.md)
1
4
  [![License: Apache 2.0](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)
5
+ [![Contributor Covenant](https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa.svg)](/CODE_OF_CONDUCT.md)
6
+ [![Discord](https://badgen.net/badge/icon/discord?icon=discord&label)](https://discord.gg/EKYJAjqGhf)
2
7
  [![Lit](https://img.shields.io/badge/-Lit-324fff?style=flat&logo=data:image/svg%2bxml;base64,PHN2ZyBmaWxsPSIjZmZmIiB2aWV3Qm94PSIwIDAgMTYwIDIwMCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJtMTYwIDgwdjgwbC00MC00MHptLTQwIDQwdjgwbDQwLTQwem0wLTgwdjgwbC00MC00MHptLTQwIDQwdjgwbDQwLTQwem0tNDAtNDB2ODBsNDAtNDB6bTQwLTQwdjgwbC00MC00MHptLTQwIDEyMHY4MGwtNDAtNDB6bS00MC00MHY4MGw0MC00MHoiLz48L3N2Zz4%3D)](https://lit.dev/)
3
8
  [![#HAXTheWeb](https://img.shields.io/badge/-HAXTheWeb-999999FF?style=flat&logo=data:image/svg%2bxml;base64,PHN2ZyBpZD0iZmVhMTExZTAtMjEwZC00Y2QwLWJhMWQtZGZmOTQyODc0Njg1IiBkYXRhLW5hbWU9IkxheWVyIDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgdmlld0JveD0iMCAwIDE4NC40IDEzNS45NyI+PGRlZnM+PHN0eWxlPi5lMWJjMjAyNS0xODAwLTRkYzItODc4NS1jNDZlZDEwM2Y0OTJ7ZmlsbDojMjMxZjIwO308L3N0eWxlPjwvZGVmcz48cGF0aCBjbGFzcz0iZTFiYzIwMjUtMTgwMC00ZGMyLTg3ODUtYzQ2ZWQxMDNmNDkyIiBkPSJNNzguMDcsODMuNDVWNTVIODYuMnY4LjEzaDE2LjI2djQuMDdoNC4wN1Y4My40NUg5OC40VjY3LjE5SDg2LjJWODMuNDVaIi8+PHBvbHlnb24gcG9pbnRzPSIxNTMuMTMgNjMuNyAxNTMuMTMgNTEuMzkgMTQwLjU0IDUxLjM5IDE0MC41NCAzOS4wOSAxMjcuOTUgMzkuMDkgMTI3Ljk1IDI2Ljc5IDEwMi43OCAyNi43OSAxMDIuNzggMzkuMDkgMTE1LjM2IDM5LjA5IDExNS4zNiA1MS4zOSAxMjcuOTUgNTEuMzkgMTI3Ljk1IDYzLjcgMTQwLjU0IDYzLjcgMTQwLjU0IDc2IDEyNy4zNiA3NiAxMjcuMzYgODguMyAxMTQuNzggODguMyAxMTQuNzggMTAwLjYxIDEwMi4xOSAxMDAuNjEgMTAyLjE5IDExMi45MSAxMjcuMzYgMTEyLjkxIDEyNy4zNiAxMDAuNjEgMTM5Ljk1IDEwMC42MSAxMzkuOTUgODguMyAxNTIuNTQgODguMyAxNTIuNTQgNzYgMTY1LjcyIDc2IDE2NS43MiA2My43IDE1My4xMyA2My43Ii8+PHBvbHlnb24gcG9pbnRzPSIzMy4xMyA2My43IDMzLjEzIDUxLjM5IDQ1LjcyIDUxLjM5IDQ1LjcyIDM5LjA5IDU4LjMxIDM5LjA5IDU4LjMxIDI2Ljc5IDgzLjQ4IDI2Ljc5IDgzLjQ4IDM5LjA5IDcwLjg5IDM5LjA5IDcwLjg5IDUxLjM5IDU4LjMxIDUxLjM5IDU4LjMxIDYzLjcgNDUuNzIgNjMuNyA0NS43MiA3NiA1OC44OSA3NiA1OC44OSA4OC4zIDcxLjQ4IDg4LjMgNzEuNDggMTAwLjYxIDg0LjA3IDEwMC42MSA4NC4wNyAxMTIuOTEgNTguODkgMTEyLjkxIDU4Ljg5IDEwMC42MSA0Ni4zMSAxMDAuNjEgNDYuMzEgODguMyAzMy43MiA4OC4zIDMzLjcyIDc2IDIwLjU0IDc2IDIwLjU0IDYzLjcgMzMuMTMgNjMuNyIvPjwvc3ZnPg==)](https://haxtheweb.org/)
4
9
  [![Published on npm](https://img.shields.io/npm/v/@haxtheweb/create?style=flat)](https://www.npmjs.com/package/@haxtheweb/create)
@@ -23,6 +28,8 @@ hax start
23
28
  - if in a monorepo root, will place in correct location / inherit settings
24
29
  - `hax site mysite --y` - create a new HAXsite (HAXcms, single site)
25
30
  - `hax audit` - Audits web components for compliance with DDD (HAX design system)
31
+ - `hax update` - HAX CLI self update
32
+ - `hax party` - Display options to join the HAX community and get involved!
26
33
 
27
34
  ## --help
28
35
  Run `hax help` or `hax webcomponent --help` or `hax site --help` for up-to-date listing
package/dist/create.js CHANGED
@@ -52,11 +52,14 @@ async function main() {
52
52
  _commander.program.option('--').option('--v', 'Verbose output').option('--debug', 'Output for developers').option('--format <char>', 'Output format; json (default), yaml').option('--path <char>', 'where to perform operation').option('--name <char>', 'name of the project/web component').option('--npm-client <char>', 'npm client to use (must be installed) npm, yarn, pnpm', 'npm').option('--y', 'yes to all questions').option('--skip', 'skip frills like animations').option('--quiet', 'remove console logging').option('--auto', 'yes to all questions, alias of y').option('--no-i', 'prevent interactions / sub-process, good for scripting').option('--to-file <char>', 'redirect command output to a file').option('--no-extras', 'skip all extra / automatic command processing').option('--root <char>', 'root location to execute the command from')
53
53
 
54
54
  // options for webcomponent
55
- .option('--org <char>', 'organization for package.json').option('--author <char>', 'author for site / package.json').option('--writeHaxProperties', 'Write haxProperties for the element')
55
+ .option('--org <char>', 'organization for package.json').option('--author <char>', 'author for site / package.json').option('--writeHaxProperties', 'Write haxProperties for the element').option('--force', 'force creation even if name exists in registry')
56
56
 
57
57
  // options for site
58
58
  .option('--import-site <char>', 'URL of site to import').option('--import-structure <char>', `import method to use:\n\rpressbooksToSite\n\relmslnToSite\n\rhaxcmsToSite\n\rnotionToSite\n\rgitbookToSite\n\revolutionToSite\n\rhtmlToSite\n\rdocxToSite`).option('--node-op <char>', 'node operation to perform').option('--item-id <char>', 'node ID to operate on').option('--domain <char>', 'published domain name').option('--title-scrape <char>', 'CSS Selector for `title` in resource').option('--content-scrape <char>', 'CSS Selector for `body` in resource').option('--items-import <char>', 'import items from a file / site').option('--recipe <char>', 'path to recipe file').option('--custom-theme-name <char>', 'custom theme name').option('--custom-theme-template <char>', 'custom theme template; (options: base, polaris-flex, polaris-sidebar)')
59
59
 
60
+ // options for rsync
61
+ .option('--source <char>', 'rsync source directory or remote path').option('--destination <char>', 'rsync destination directory or remote path').option('--exclude <char>', 'comma-separated patterns to exclude from rsync').option('--dry-run', 'perform rsync dry run').option('--delete', 'delete extraneous files from destination')
62
+
60
63
  // options for party
61
64
  .option('--repos <char...>', 'repositories to clone').version(_package.default.version).helpCommand(true);
62
65
 
@@ -100,7 +103,7 @@ async function main() {
100
103
  commandRun.arguments.action = action;
101
104
  commandRun.options.skip = true;
102
105
  }
103
- }).option('--v', 'Verbose output').option('--debug', 'Output for developers').option('--format <char>', 'Output format; json (default), yaml').option('--path <char>', 'where to perform operation').option('--npm-client <char>', 'npm client to use (must be installed) npm, yarn, pnpm', 'npm').option('--y', 'yes to all questions').option('--skip', 'skip frills like animations').option('--quiet', 'remove console logging').option('--auto', 'yes to all questions, alias of y').option('--no-i', 'prevent interactions / sub-process, good for scripting').option('--to-file <char>', 'redirect command output to a file').option('--no-extras', 'skip all extra / automatic command processing').option('--root <char>', 'root location to execute the command from').option('--import-site <char>', 'URL of site to import').option('--import-structure <char>', `import method to use:\n\rpressbooksToSite\n\relmslnToSite\n\rhaxcmsToSite\n\rnotionToSite\n\rgitbookToSite\n\revolutionToSite\n\rhtmlToSite\n\rdocxToSite`).option('--name <char>', 'name of the site (when creating a new one)').option('--domain <char>', 'published domain name').option('--node-op <char>', 'node operation to perform').option('--title-scrape <char>', 'CSS Selector for `title` in resource').option('--content-scrape <char>', 'CSS Selector for `body` in resource').option('--items-import <char>', 'import items from a file / site').option('--recipe <char>', 'path to recipe file').option('--custom-theme-name <char>', 'custom theme name').option('--custom-theme-template <char>', 'custom theme template (options: base, polaris-flex, polaris-sidebar)').version(_package.default.version);
106
+ }).option('--v', 'Verbose output').option('--debug', 'Output for developers').option('--format <char>', 'Output format; json (default), yaml').option('--path <char>', 'where to perform operation').option('--npm-client <char>', 'npm client to use (must be installed) npm, yarn, pnpm', 'npm').option('--y', 'yes to all questions').option('--skip', 'skip frills like animations').option('--quiet', 'remove console logging').option('--auto', 'yes to all questions, alias of y').option('--no-i', 'prevent interactions / sub-process, good for scripting').option('--to-file <char>', 'redirect command output to a file').option('--no-extras', 'skip all extra / automatic command processing').option('--root <char>', 'root location to execute the command from').option('--import-site <char>', 'URL of site to import').option('--import-structure <char>', `import method to use:\n\rpressbooksToSite\n\relmslnToSite\n\rhaxcmsToSite\n\rnotionToSite\n\rgitbookToSite\n\revolutionToSite\n\rhtmlToSite\n\rdocxToSite`).option('--name <char>', 'name of the site (when creating a new one)').option('--domain <char>', 'published domain name').option('--node-op <char>', 'node operation to perform').option('--title-scrape <char>', 'CSS Selector for `title` in resource').option('--content-scrape <char>', 'CSS Selector for `body` in resource').option('--items-import <char>', 'import items from a file / site').option('--recipe <char>', 'path to recipe file').option('--custom-theme-name <char>', 'custom theme name').option('--custom-theme-template <char>', 'custom theme template (options: base, polaris-flex, polaris-sidebar)').option('--source <char>', 'rsync source directory or remote path').option('--destination <char>', 'rsync destination directory or remote path').option('--exclude <char>', 'comma-separated patterns to exclude from rsync').option('--dry-run', 'perform rsync dry run').option('--delete', 'delete extraneous files from destination').version(_package.default.version);
104
107
  let siteNodeOps = (0, _site.siteNodeOperations)();
105
108
  for (var i in siteNodeOps) {
106
109
  _commander.program.option(`--${(0, _utils.camelToDash)(siteNodeOps[i].value)} <char>`, `${siteNodeOps[i].label}`);
@@ -123,7 +126,7 @@ async function main() {
123
126
  commandRun.arguments.action = action;
124
127
  commandRun.options.skip = true;
125
128
  }
126
- }).option('--path <char>', 'path the project should be created in').option('--org <char>', 'organization for package.json').option('--author <char>', 'author for site / package.json').option('--name <char>', 'name of the web component').option('--writeHaxProperties', 'Write haxProperties for the element').option('--to-file <char>', 'redirect command output to a file').option('--no-extras', 'skip all extra / automatic command processing').option('--no-i', 'prevent interactions / sub-process, good for scripting').option('--root <char>', 'root location to execute the command from').version(_package.default.version);
129
+ }).option('--path <char>', 'path the project should be created in').option('--org <char>', 'organization for package.json').option('--author <char>', 'author for site / package.json').option('--name <char>', 'name of the web component').option('--writeHaxProperties', 'Write haxProperties for the element').option('--to-file <char>', 'redirect command output to a file').option('--no-extras', 'skip all extra / automatic command processing').option('--no-i', 'prevent interactions / sub-process, good for scripting').option('--root <char>', 'root location to execute the command from').option('--force', 'force creation even if name exists in registry').version(_package.default.version);
127
130
 
128
131
  // audit program
129
132
  _commander.program.command('audit').description('Audits web components for compliance with DDD (HAX design system)').action(() => {
@@ -264,6 +267,7 @@ async function main() {
264
267
  }
265
268
  (0, _audit.auditCommandDetected)(commandRun, customPath);
266
269
  } else if (commandRun.command === 'party') {
270
+ commandRun.options.author = author;
267
271
  await (0, _party.partyCommandDetected)(commandRun);
268
272
  }
269
273
  // CLI works within context of the site if one is detected, otherwise we can do other things
@@ -452,7 +456,7 @@ async function main() {
452
456
  return "Name must include at least one `-` and must not start or end name.";
453
457
  }
454
458
  // test that this is not an existing element we use in the registry
455
- if (results.type === "webcomponent" && wcReg[value]) {
459
+ if (results.type === "webcomponent" && wcReg[value] && !commandRun.options.force) {
456
460
  return "Name is already a web component in the wc-registry published for HAX.";
457
461
  }
458
462
  // Check for any other syntax errors
@@ -499,7 +503,7 @@ async function main() {
499
503
  process.exit(1);
500
504
  }
501
505
  // test that this is not an existing element we use in the registry
502
- if (results.type === "webcomponent" && wcReg[value]) {
506
+ if (results.type === "webcomponent" && wcReg[value] && !commandRun.options.force) {
503
507
  _commander.program.error(_picocolors.default.red("Name is already a web component in the wc-registry published for HAX."));
504
508
  process.exit(1);
505
509
  }
package/dist/docs/hax.1 CHANGED
@@ -14,19 +14,133 @@ This command line tool can be used to create and modify two different HAX based
14
14
  .SH COMMANDS
15
15
  .PP
16
16
  .B start
17
- \- Interactive program to pick options
17
+ \- Select which hax sub\-program to run
18
+ .PP
19
+ .B update
20
+ [options] \- hax cli self update
21
+ .PP
22
+ .B serve
23
+ \- Launch HAXsite in development mode (http://localhost)
18
24
  .PP
19
25
  .B site
20
- [options] [action] \- Create a HAX website
26
+ [options] [action] \- create or administer a HAXsite
27
+ .RS
28
+ Actions to perform on site include:
29
+ .RS
30
+ .B start
31
+ \- Launch site in browser (http://localhost)
32
+ .br
33
+ .B serve
34
+ \- Launch site in development mode
35
+ .br
36
+ .B node:stats
37
+ \- Node Stats / data
38
+ .br
39
+ .B node:add
40
+ \- Add a new page
41
+ .br
42
+ .B node:edit
43
+ \- Edit a page
44
+ .br
45
+ .B node:delete
46
+ \- Delete a page
47
+ .br
48
+ .B site:stats
49
+ \- Site Status / stats
50
+ .br
51
+ .B site:items
52
+ \- Site items
53
+ .br
54
+ .B site:items\-import
55
+ \- Import items (JOS / site.json)
56
+ .br
57
+ .B site:list\-files
58
+ \- List site files
59
+ .br
60
+ .B site:theme
61
+ \- Change theme
62
+ .br
63
+ .B site:element
64
+ \- Add new Lit component to custom/src
65
+ .br
66
+ .B site:html
67
+ \- Full site as HTML
68
+ .br
69
+ .B site:md
70
+ \- Full site as Markdown
71
+ .br
72
+ .B site:schema
73
+ \- Full site as HAXElementSchema
74
+ .br
75
+ .B site:sync
76
+ \- Sync git repo
77
+ .br
78
+ .B site:rsync
79
+ \- Rsync site to remote/local directory
80
+ .br
81
+ .B site:surge
82
+ \- Publish site to Surge.sh
83
+ .br
84
+ .B site:netlify
85
+ \- Publish site to Netlify
86
+ .br
87
+ .B site:vercel
88
+ \- Publish site to Vercel
89
+ .br
90
+ .B setup:github\-actions
91
+ \- Setup GitHub Actions deployment
92
+ .br
93
+ .B setup:gitlab\-ci
94
+ \- Setup GitLab CI deployment
95
+ .br
96
+ .B recipe:read
97
+ \- Read recipe file
98
+ .br
99
+ .B recipe:play
100
+ \- Play recipe file
101
+ .br
102
+ .B issue:general
103
+ \- Issue: Submit an issue or suggestion
104
+ .br
105
+ .B issue:theme
106
+ \- Issue: Suggest custom theme
107
+ .RE
108
+ .RE
21
109
  .PP
22
- .B webcomponent
23
- [options] [name] \- Create Lit based web components, with HAX recommendations
110
+ .B wc | webcomponent
111
+ [options] [action] \- Create Lit based web components, with HAX recommendations
112
+ .RS
113
+ Actions to perform on web component include:
114
+ .RS
115
+ .B start
116
+ \- Launch project
117
+ .br
118
+ .B wc:stats
119
+ \- Check status of web component
120
+ .br
121
+ .B wc:element
122
+ \- Add new Lit component to existing project
123
+ .br
124
+ .B wc:haxproperties
125
+ \- Write haxProperties schema
126
+ .RE
127
+ .RE
24
128
  .PP
25
129
  .B audit
26
130
  [options] \- Audits web components for compliance with DDD (HAX design system)
27
131
  .PP
132
+ .B party
133
+ [options] [action] \- Party time! Join the HAX community and get involved!
134
+ .RS
135
+ Actions to perform include:
136
+ .RS
137
+ .B test
138
+ \- Test action
139
+ .RE
140
+ .RE
141
+ .PP
28
142
  .B help
29
- [command] \- Display help for command
143
+ [command] \- display help for command
30
144
 
31
145
  .SH OPTIONS
32
146
  .TP
@@ -34,129 +148,187 @@ This command line tool can be used to create and modify two different HAX based
34
148
  Verbose output
35
149
  .TP
36
150
  \--debug
37
- Output for developers
151
+ output for developers
38
152
  .TP
39
- \--format [format]
40
- Output format\; json (default), yaml
153
+ \--format <char>
154
+ output format; json (default), yaml
41
155
  .TP
42
- \--path [path]
43
- Where to perform operation
156
+ \--path <char>
157
+ where to perform operation
44
158
  .TP
45
- \--npm\-client [client]
46
- NPM client to use (must be installed); npm (default), yarn, pnpm
159
+ \--name <char>
160
+ name of the project/web component
47
161
  .TP
48
- \--y, \--auto
49
- Yes to all questions
162
+ \--npm\-client <char>
163
+ npm client to use (must be installed) npm, yarn, pnpm (default: "npm")
164
+ .TP
165
+ \--y
166
+ yes to all questions
50
167
  .TP
51
168
  \--skip
52
- Skip extras (e.g. animations) in tool
169
+ skip frills like animations
53
170
  .TP
54
171
  \--quiet
55
- Remove console logging
172
+ remove console logging
173
+ .TP
174
+ \--auto
175
+ yes to all questions, alias of y
56
176
  .TP
57
177
  \--no\-i
58
- Prevent interactions / sub\-process, good for scripting
178
+ prevent interactions / sub\-process, good for scripting
59
179
  .TP
60
- \--to\-file [char]
61
- Redirect command output to a file
180
+ \--to\-file <char>
181
+ redirect command output to a file
62
182
  .TP
63
183
  \--no\-extras
64
- Skip all extra / automatic commmand processing
184
+ skip all extra / automatic command processing
65
185
  .TP
66
- \--root [location]
67
- Root location to execute the command from
186
+ \--root <char>
187
+ root location to execute the command from
68
188
  .TP
69
- \--org [organization]
70
- Organization for package.json
189
+ \--org <char>
190
+ organization for package.json
71
191
  .TP
72
- \--author [author]
73
- Author for site / package.json
192
+ \--author <char>
193
+ author for site / package.json
74
194
  .TP
75
195
  \--writeHaxProperties
76
- Write haxProperties for the element
196
+ write haxProperties for the element
77
197
  .TP
78
- \--import\-site [url]
198
+ \--import\-site <char>
79
199
  URL of site to import
80
200
  .TP
81
- \--import\-structure [method]
82
- Import method to use: pressbooksToSite | elsmlnToSite | haxcmsToSite | notionToSite | gitbookToSite | evolutionToSite | htmlToSite | docxToSite
201
+ \--import\-structure <char>
202
+ import method to use:
203
+ .br
204
+ pressbooksToSite
205
+ .br
206
+ elmslnToSite
207
+ .br
208
+ haxcmsToSite
209
+ .br
210
+ notionToSite
211
+ .br
212
+ gitbookToSite
213
+ .br
214
+ evolutionToSite
215
+ .br
216
+ htmlToSite
217
+ .br
218
+ docxToSite
219
+ .TP
220
+ \--node\-op <char>
221
+ node operation to perform
222
+ .TP
223
+ \--item\-id <char>
224
+ node ID to operate on
225
+ .TP
226
+ \--domain <char>
227
+ published domain name
83
228
  .TP
84
- \--node\-op [operation]
85
- Node operation to perform
229
+ \--title\-scrape <char>
230
+ CSS Selector for `title` in resource
86
231
  .TP
87
- \--item\-id [id]
88
- Node ID to operate on
232
+ \--content\-scrape <char>
233
+ CSS Selector for `body` in resource
89
234
  .TP
90
- \--name [name]
91
- Name of the project
235
+ \--items\-import <char>
236
+ import items from a file / site
92
237
  .TP
93
- \--domain [name]
94
- Published domain name
238
+ \--recipe <char>
239
+ path to recipe file
95
240
  .TP
96
- \--title\-scrape [selector]
97
- CSS selector for `title` in resource
241
+ \--custom\-theme\-name <char>
242
+ custom theme name
98
243
  .TP
99
- \--content\-scrape [selector[
100
- CSS selector for `body` in resource
244
+ \--custom\-theme\-template <char>
245
+ custom theme template; (options: base, polaris\-flex, polaris\-sidebar)
101
246
  .TP
102
- \--items\-import [char]
103
- Import items from a file / site
247
+ \--source <char>
248
+ rsync source directory or remote path
104
249
  .TP
105
- \--recipe [path]
106
- Path to recipe file
250
+ \--destination <char>
251
+ rsync destination directory or remote path
107
252
  .TP
108
- \--custom\-theme\-name [name]
109
- Custom theme name
253
+ \--exclude <char>
254
+ comma\-separated patterns to exclude from rsync
110
255
  .TP
111
- \--custom\-theme\-template [option]
112
- Custom theme template (Options: base | polaris-flex | polaris-sidebar)
256
+ \--dry\-run
257
+ perform rsync dry run
258
+ .TP
259
+ \--delete
260
+ delete extraneous files from destination
261
+ .TP
262
+ \--repos <char...>
263
+ repositories to clone
113
264
  .TP
114
265
  \-V, \--version
115
- Output the version number
266
+ output the version number
116
267
  .TP
117
- \--title [title]
118
- Title
268
+ \--title <char>
269
+ title
119
270
  .TP
120
- \--content [content]
121
- Page content
271
+ \--content <char>
272
+ page content
122
273
  .TP
123
- \--slug [slug]
124
- Path (slug)
274
+ \--slug <char>
275
+ path (slug)
125
276
  .TP
126
- \--published [status]
127
- Publishing status
277
+ \--published <char>
278
+ publishing status
128
279
  .TP
129
- \--tags [tag]
130
- Tags
280
+ \--tags <char>
281
+ tags
131
282
  .TP
132
- \--parent [parent]
133
- Parent
283
+ \--parent <char>
284
+ parent
134
285
  .TP
135
- \--order [order]
136
- Order
286
+ \--order <char>
287
+ order
137
288
  .TP
138
- \--theme [theme]
139
- Theme
289
+ \--theme <char>
290
+ theme
140
291
  .TP
141
- \--hide\-in\-menu [char]
142
- Hide in menu
292
+ \--hide\-in\-menu <char>
293
+ hide in menu
143
294
  .TP
144
295
  \-h, \--help
145
- Display help for command
296
+ display help for command
146
297
 
147
298
  .SH EXAMPLES
148
299
  .TP
149
300
  .B hax start
150
- Navigatable interface
301
+ Navigatable interface to select which hax sub\-program to run
302
+ .TP
303
+ .B hax site mysite \--y
304
+ Create a new HAXsite (HAXcms, single site) with automatic yes to all questions
151
305
  .TP
152
- .B hax site mysite --y
153
- Create a new HAXsite (HAXcms, single site)
306
+ .B hax site mysite \--path /var/www \--author "John Doe"
307
+ Create a new HAXsite in a specific path with custom author
154
308
  .TP
155
- .B hax webcomponent my-element --y
309
+ .B hax webcomponent my\-element \--y
156
310
  Make a new HAX capable, i18n wired, design system (DDD) driven web component
157
311
  .TP
158
- .B hax audit
159
- Audit web components for compliance with DDD (HAX design system)
312
+ .B hax wc my\-button \--org @mycompany \--author "Developer Name"
313
+ Create a web component with specific organization and author
314
+ .TP
315
+ .B hax serve
316
+ Launch HAXsite in development mode (http://localhost)
317
+ .TP
318
+ .B hax site site:theme \--theme polaris\-flex
319
+ Change the theme of an existing site
320
+ .TP
321
+ .B hax site node:add \--title "New Page" \--content "Page content"
322
+ Add a new page to an existing site
323
+ .TP
324
+ .B hax audit \--debug
325
+ Audit web components for compliance with DDD (HAX design system) with debug output
326
+ .TP
327
+ .B hax party \--repos haxtheweb/webcomponents
328
+ Join the HAX community by cloning specific repositories
329
+ .TP
330
+ .B hax update \--y
331
+ Update HAX CLI to the latest version automatically
160
332
 
161
333
  .SH BUGS
162
334
  Bugs can be viewed at GitHub Issues: https://github.com/haxtheweb/issues/issues