@numueg/theme-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.
- package/CHANGELOG.md +35 -0
- package/LICENSE +21 -0
- package/README.md +90 -0
- package/dist/index.js +3882 -0
- package/package.json +65 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to `@numueg/theme-cli` are documented here. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
4
|
+
|
|
5
|
+
## [Unreleased]
|
|
6
|
+
|
|
7
|
+
## [0.1.0] - 2026-05-11
|
|
8
|
+
|
|
9
|
+
First public release. Full surface documented at [numueg.app/docs/cli-plugin/overview](https://numueg.app/docs/cli-plugin/overview).
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- **`numu-theme init <name>`** — scaffold a fresh theme (entry, sections, blocks, schemas, locales, templates, assets).
|
|
14
|
+
- **`numu-theme dev`** — local Vite dev server with HMR + mock-data preview at `http://localhost:3001/__numu/preview`.
|
|
15
|
+
- **`numu-theme check`** — syntax-validate `theme.json` + every schema + locale.
|
|
16
|
+
- **`numu-theme lint`** — static analysis runner with 10 built-in rules:
|
|
17
|
+
- `manifest-required-fields`
|
|
18
|
+
- `schema-registry-sync`
|
|
19
|
+
- `locale-parity`
|
|
20
|
+
- `preset-schema-conformance`
|
|
21
|
+
- `unused-settings`
|
|
22
|
+
- `img-missing-alt`
|
|
23
|
+
- `hardcoded-text`
|
|
24
|
+
- `inline-color-literal`
|
|
25
|
+
- `forbidden-script-tag`
|
|
26
|
+
- `use-app-no-availability-check`
|
|
27
|
+
- **`numu-theme build`** — production Vite build with contract validation + schema codegen.
|
|
28
|
+
- **`numu-theme push`** — upload `dist/` to the developer sandbox.
|
|
29
|
+
- **`numu-theme submit`** — submit `dist/` for public marketplace review.
|
|
30
|
+
- **`numu-theme install <theme-id>`** — install a published or developer-uploaded theme into a test store.
|
|
31
|
+
- **`numu-theme login` / `status` / `doctor`** — auth + diagnostics.
|
|
32
|
+
- **`numu-theme add-section <name>`** — scaffold a section, with `--from-library <slug>` to copy from the bundled 15-entry section library:
|
|
33
|
+
- hero-with-cta, featured-products, image-with-text, newsletter-signup, multi-column, testimonials, faq-accordion, logo-cloud, collection-list, video-embed, rich-text, announcement-bar, countdown-timer, featured-blog-posts, contact-map.
|
|
34
|
+
- **`numu-theme add-block <section> <name>`** — scaffold a block under a section.
|
|
35
|
+
- **`numu-theme pull` / `delete`** — download published theme source / soft-delete a draft.
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 NUMU
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# @numueg/theme-cli
|
|
2
|
+
|
|
3
|
+
> CLI for developing, validating, building, linting, and publishing NUMU storefront themes.
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/@numueg/theme-cli)
|
|
6
|
+
[](./LICENSE)
|
|
7
|
+
|
|
8
|
+
The `numu-theme` command suite. Scaffold, dev-serve, lint, build, submit, install.
|
|
9
|
+
|
|
10
|
+
## Install
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
npm install -g @numueg/theme-cli
|
|
14
|
+
numu-theme --version
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
## Quick start
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
numu-theme init my-fashion-theme
|
|
21
|
+
cd my-fashion-theme
|
|
22
|
+
npm install
|
|
23
|
+
numu-theme dev
|
|
24
|
+
# → http://localhost:3001/__numu/preview
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
Iterate, then:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
numu-theme lint
|
|
31
|
+
numu-theme build
|
|
32
|
+
numu-theme login # one-time
|
|
33
|
+
numu-theme submit
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
After admin approval, merchants can install your theme from the NUMU marketplace.
|
|
37
|
+
|
|
38
|
+
## Commands
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
numu-theme init <name> Scaffold a fresh theme
|
|
42
|
+
numu-theme dev [--watch] Local dev server with HMR
|
|
43
|
+
numu-theme check Validate theme.json + schemas + locales
|
|
44
|
+
numu-theme lint [--strict] Static analysis (10 rules)
|
|
45
|
+
numu-theme build Production build → dist/
|
|
46
|
+
numu-theme push Upload dist/ to developer sandbox
|
|
47
|
+
numu-theme submit Submit dist/ for marketplace review
|
|
48
|
+
numu-theme install <theme-id> Install a theme into a test store
|
|
49
|
+
numu-theme login Marketplace auth
|
|
50
|
+
numu-theme status Login + active theme + build status
|
|
51
|
+
numu-theme doctor Diagnose common setup issues
|
|
52
|
+
numu-theme add-section <name> Scaffold a section (--from-library <slug>)
|
|
53
|
+
numu-theme add-block <section> <name>
|
|
54
|
+
numu-theme pull <theme-id> Download published theme source
|
|
55
|
+
numu-theme delete <theme-id> Soft-delete a draft / unpublish
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Bundled section library (15 entries)
|
|
59
|
+
|
|
60
|
+
`numu-theme add-section <new-name> --from-library <slug>` clones a production-grade section in. `--list` prints the catalog:
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
hero-with-cta announcement-bar
|
|
64
|
+
featured-products countdown-timer
|
|
65
|
+
image-with-text featured-blog-posts
|
|
66
|
+
newsletter-signup contact-map
|
|
67
|
+
multi-column collection-list
|
|
68
|
+
testimonials video-embed
|
|
69
|
+
faq-accordion rich-text
|
|
70
|
+
logo-cloud
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## Lint rules (10)
|
|
74
|
+
|
|
75
|
+
`manifest-required-fields`, `schema-registry-sync`, `locale-parity`, `preset-schema-conformance`, `unused-settings`, `img-missing-alt`, `hardcoded-text`, `inline-color-literal`, `forbidden-script-tag`, `use-app-no-availability-check`.
|
|
76
|
+
|
|
77
|
+
## Docs
|
|
78
|
+
|
|
79
|
+
- [CLI Reference](https://numueg.app/docs/cli-plugin/cli-commands)
|
|
80
|
+
- [Lint Rules](https://numueg.app/docs/cli-plugin/lint-rules)
|
|
81
|
+
- [Section Library](https://numueg.app/docs/cli-plugin/section-library)
|
|
82
|
+
- [Theme Dev E2E](https://numueg.app/docs/workflows/theme-dev-e2e)
|
|
83
|
+
|
|
84
|
+
## Node version
|
|
85
|
+
|
|
86
|
+
Requires Node 18 or newer.
|
|
87
|
+
|
|
88
|
+
## License
|
|
89
|
+
|
|
90
|
+
MIT — see [LICENSE](./LICENSE).
|