@tailor-platform/erp-kit 0.1.0 → 0.1.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 (102) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/LICENSE +21 -0
  3. package/README.md +77 -50
  4. package/dist/cli.js +693 -553
  5. package/package.json +4 -2
  6. package/schemas/module/command.yml +1 -0
  7. package/schemas/module/model.yml +9 -0
  8. package/schemas/module/query.yml +53 -0
  9. package/skills/1-module-docs/SKILL.md +4 -0
  10. package/{rules/module-development → skills/1-module-docs/references}/structure.md +2 -7
  11. package/skills/2-module-feature-breakdown/SKILL.md +6 -0
  12. package/{rules/module-development → skills/2-module-feature-breakdown/references}/commands.md +0 -6
  13. package/{rules/module-development → skills/2-module-feature-breakdown/references}/models.md +0 -5
  14. package/skills/2-module-feature-breakdown/references/structure.md +22 -0
  15. package/skills/3-module-doc-review/SKILL.md +6 -0
  16. package/skills/3-module-doc-review/references/commands.md +54 -0
  17. package/skills/3-module-doc-review/references/models.md +29 -0
  18. package/{rules/module-development → skills/3-module-doc-review/references}/testing.md +0 -6
  19. package/skills/4-module-tdd-implementation/SKILL.md +24 -6
  20. package/skills/4-module-tdd-implementation/references/commands.md +45 -0
  21. package/{rules/sdk-best-practices → skills/4-module-tdd-implementation/references}/db-relations.md +0 -5
  22. package/{rules/module-development → skills/4-module-tdd-implementation/references}/errors.md +0 -5
  23. package/{rules/module-development → skills/4-module-tdd-implementation/references}/exports.md +0 -5
  24. package/skills/4-module-tdd-implementation/references/models.md +30 -0
  25. package/skills/4-module-tdd-implementation/references/structure.md +22 -0
  26. package/skills/4-module-tdd-implementation/references/testing.md +37 -0
  27. package/skills/5-module-implementation-review/SKILL.md +8 -0
  28. package/skills/5-module-implementation-review/references/commands.md +45 -0
  29. package/skills/5-module-implementation-review/references/errors.md +7 -0
  30. package/skills/5-module-implementation-review/references/exports.md +8 -0
  31. package/skills/5-module-implementation-review/references/models.md +30 -0
  32. package/skills/5-module-implementation-review/references/testing.md +29 -0
  33. package/skills/app-compose-1-requirement-analysis/SKILL.md +4 -0
  34. package/{rules/app-compose → skills/app-compose-1-requirement-analysis/references}/structure.md +0 -5
  35. package/skills/app-compose-2-requirements-breakdown/SKILL.md +7 -0
  36. package/{rules/app-compose/frontend → skills/app-compose-2-requirements-breakdown/references}/screen-detailview.md +0 -6
  37. package/{rules/app-compose/frontend → skills/app-compose-2-requirements-breakdown/references}/screen-form.md +0 -6
  38. package/{rules/app-compose/frontend → skills/app-compose-2-requirements-breakdown/references}/screen-listview.md +0 -6
  39. package/skills/app-compose-2-requirements-breakdown/references/structure.md +27 -0
  40. package/skills/app-compose-3-doc-review/SKILL.md +4 -0
  41. package/skills/app-compose-3-doc-review/references/structure.md +27 -0
  42. package/skills/app-compose-4-design-mock/SKILL.md +8 -0
  43. package/{rules/app-compose/frontend → skills/app-compose-4-design-mock/references}/component.md +0 -5
  44. package/skills/app-compose-4-design-mock/references/screen-detailview.md +106 -0
  45. package/skills/app-compose-4-design-mock/references/screen-form.md +139 -0
  46. package/skills/app-compose-4-design-mock/references/screen-listview.md +153 -0
  47. package/skills/app-compose-4-design-mock/references/structure.md +27 -0
  48. package/skills/app-compose-5-design-mock-review/SKILL.md +7 -0
  49. package/skills/app-compose-5-design-mock-review/references/component.md +50 -0
  50. package/skills/app-compose-5-design-mock-review/references/screen-detailview.md +106 -0
  51. package/skills/app-compose-5-design-mock-review/references/screen-form.md +139 -0
  52. package/skills/app-compose-5-design-mock-review/references/screen-listview.md +153 -0
  53. package/skills/app-compose-6-implementation-spec/SKILL.md +5 -0
  54. package/{rules/app-compose/backend → skills/app-compose-6-implementation-spec/references}/auth.md +0 -6
  55. package/skills/app-compose-6-implementation-spec/references/structure.md +27 -0
  56. package/src/cli.ts +8 -90
  57. package/src/commands/app/index.ts +74 -0
  58. package/src/commands/check.test.ts +2 -1
  59. package/src/commands/check.ts +1 -0
  60. package/src/commands/init.test.ts +30 -19
  61. package/src/commands/init.ts +76 -43
  62. package/src/commands/module/index.ts +85 -0
  63. package/src/commands/module/list.test.ts +62 -0
  64. package/src/commands/module/list.ts +64 -0
  65. package/src/commands/scaffold.test.ts +5 -0
  66. package/src/commands/scaffold.ts +2 -1
  67. package/src/commands/sync-check.test.ts +28 -0
  68. package/src/commands/sync-check.ts +6 -0
  69. package/src/integration.test.ts +6 -8
  70. package/src/module.ts +4 -3
  71. package/src/modules/primitives/docs/models/Currency.md +4 -0
  72. package/src/modules/primitives/docs/models/ExchangeRate.md +4 -1
  73. package/src/modules/primitives/docs/models/Unit.md +4 -1
  74. package/src/modules/primitives/docs/models/UoMCategory.md +2 -0
  75. package/src/modules/primitives/index.ts +2 -2
  76. package/src/modules/primitives/module.ts +5 -3
  77. package/src/modules/primitives/permissions.ts +0 -2
  78. package/src/modules/primitives/{command → query}/convertAmount.test.ts +2 -19
  79. package/src/modules/primitives/query/convertAmount.ts +122 -0
  80. package/src/modules/primitives/{command → query}/convertQuantity.test.ts +2 -13
  81. package/src/modules/primitives/{command → query}/convertQuantity.ts +4 -6
  82. package/src/modules/shared/defineQuery.test.ts +28 -0
  83. package/src/modules/shared/defineQuery.ts +16 -0
  84. package/src/modules/shared/internal.ts +2 -1
  85. package/src/modules/shared/types.ts +8 -0
  86. package/src/modules/user-management/docs/models/AuditEvent.md +2 -0
  87. package/src/modules/user-management/docs/models/Permission.md +2 -0
  88. package/src/modules/user-management/docs/models/Role.md +2 -0
  89. package/src/modules/user-management/docs/models/RolePermission.md +2 -0
  90. package/src/modules/user-management/docs/models/User.md +2 -0
  91. package/src/modules/user-management/docs/models/UserRole.md +2 -0
  92. package/src/schemas.ts +1 -0
  93. package/rules/app-compose/frontend/auth.md +0 -55
  94. package/rules/app-compose/frontend/page.md +0 -86
  95. package/rules/module-development/cross-module-type-injection.md +0 -28
  96. package/rules/module-development/dependency-modules.md +0 -24
  97. package/rules/module-development/executors.md +0 -67
  98. package/rules/module-development/sync-vs-async-operations.md +0 -83
  99. package/rules/sdk-best-practices/sdk-docs.md +0 -14
  100. package/src/modules/primitives/command/convertAmount.ts +0 -126
  101. /package/src/modules/primitives/docs/{commands → queries}/ConvertAmount.md +0 -0
  102. /package/src/modules/primitives/docs/{commands → queries}/ConvertQuantity.md +0 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,13 @@
1
+ # @tailor-platform/erp-kit
2
+
3
+ ## 0.1.2
4
+
5
+ ### Patch Changes
6
+
7
+ - 0c9a2e5: CQRS query support and app/module subcommands
8
+
9
+ ## 0.1.1
10
+
11
+ ### Patch Changes
12
+
13
+ - 2f43392: Add MIT LICENSE and include CHANGELOG.md in published package
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright © 2025 Tailor Inc.
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
13
+ all 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
21
+ THE SOFTWARE.
package/README.md CHANGED
@@ -11,18 +11,23 @@ npm install @tailor-platform/erp-kit
11
11
  ## Quick Start
12
12
 
13
13
  ```bash
14
- # Set up your repo (agent skills, rules)
14
+ # Set up your repo (agent skills)
15
15
  erp-kit init
16
16
 
17
- # Validate docs against schemas
18
- erp-kit check --modules-root modules
19
- erp-kit check --app-root examples
17
+ # List available modules
18
+ erp-kit module list
19
+
20
+ # Validate module docs against schemas
21
+ erp-kit module check --root src/modules
20
22
 
21
23
  # Check source ↔ doc correspondence
22
- erp-kit sync-check --modules-root modules
24
+ erp-kit module sync-check --root src/modules
25
+
26
+ # Generate a new module doc from template
27
+ erp-kit module scaffold command inventory createOrder --root src/modules
23
28
 
24
- # Generate a new doc from template
25
- erp-kit scaffold --modules-root modules <type> <parent> [name]
29
+ # Validate app docs
30
+ erp-kit app check --root examples
26
31
 
27
32
  # Start mock API servers
28
33
  erp-kit mock start
@@ -33,47 +38,76 @@ erp-kit mock validate
33
38
 
34
39
  ## Commands
35
40
 
36
- ### `check`
41
+ ### `module`
42
+
43
+ Module documentation management.
44
+
45
+ #### `module list`
37
46
 
38
- Validates markdown documentation against YAML schemas.
47
+ Lists all available modules with command, model, and feature counts.
39
48
 
40
49
  ```bash
41
- erp-kit check --modules-root modules
42
- erp-kit check --app-root examples
43
- erp-kit check --modules-root modules --app-root examples
50
+ erp-kit module list
44
51
  ```
45
52
 
46
- ### `sync-check`
53
+ #### `module check`
47
54
 
48
- Ensures every source file has a corresponding doc and vice versa. Detects missing and orphaned documentation.
55
+ Validates module markdown documentation against YAML schemas.
49
56
 
50
57
  ```bash
51
- erp-kit sync-check --modules-root modules
52
- erp-kit sync-check --app-root examples
58
+ erp-kit module check --root src/modules
53
59
  ```
54
60
 
55
- ### `scaffold`
61
+ #### `module sync-check`
62
+
63
+ Ensures every source file has a corresponding doc and vice versa.
64
+
65
+ ```bash
66
+ erp-kit module sync-check --root src/modules
67
+ ```
68
+
69
+ #### `module scaffold`
56
70
 
57
71
  Generates documentation files from schema templates.
58
72
 
59
- **Module types:**
73
+ ```bash
74
+ erp-kit module scaffold module inventory --root src/modules
75
+ erp-kit module scaffold feature inventory stock-tracking --root src/modules
76
+ erp-kit module scaffold command inventory createOrder --root src/modules
77
+ erp-kit module scaffold model inventory StockItem --root src/modules
78
+ ```
79
+
80
+ ### `app`
81
+
82
+ App-compose documentation management.
83
+
84
+ #### `app check`
85
+
86
+ Validates app documentation against YAML schemas.
60
87
 
61
88
  ```bash
62
- erp-kit scaffold --modules-root modules module inventory
63
- erp-kit scaffold --modules-root modules feature inventory stock-tracking
64
- erp-kit scaffold --modules-root modules command inventory CreateOrder
65
- erp-kit scaffold --modules-root modules model inventory StockItem
89
+ erp-kit app check --root examples
66
90
  ```
67
91
 
68
- **App-compose types:**
92
+ #### `app sync-check`
93
+
94
+ Ensures every source file has a corresponding doc and vice versa.
69
95
 
70
96
  ```bash
71
- erp-kit scaffold --app-root examples requirements my-app
72
- erp-kit scaffold --app-root examples actors my-app admin
73
- erp-kit scaffold --app-root examples business-flow my-app onboarding
74
- erp-kit scaffold --app-root examples story my-app onboarding/admin--create-user
75
- erp-kit scaffold --app-root examples screen my-app supplier-list
76
- erp-kit scaffold --app-root examples resolver my-app create-supplier
97
+ erp-kit app sync-check --root examples
98
+ ```
99
+
100
+ #### `app scaffold`
101
+
102
+ Generates documentation files from schema templates.
103
+
104
+ ```bash
105
+ erp-kit app scaffold requirements my-app --root examples
106
+ erp-kit app scaffold actors my-app admin --root examples
107
+ erp-kit app scaffold business-flow my-app onboarding --root examples
108
+ erp-kit app scaffold story my-app onboarding/admin--create-user --root examples
109
+ erp-kit app scaffold screen my-app supplier-list --root examples
110
+ erp-kit app scaffold resolver my-app create-supplier --root examples
77
111
  ```
78
112
 
79
113
  ### `mock start`
@@ -124,32 +158,31 @@ One-time setup for consumer repos. Idempotent — skips files that already exist
124
158
 
125
159
  ```bash
126
160
  erp-kit init
161
+
162
+ # Overwrite existing skills
163
+ erp-kit init --force
127
164
  ```
128
165
 
129
166
  This will:
130
167
 
131
168
  1. Copy 12 agent skills to `.agents/skills/`
132
- 2. Copy development rules to `.agents/rules/`
169
+ 2. Create symlink `.claude/skills` `.agents/skills/`
133
170
 
134
171
  ## Options
135
172
 
136
- | Flag | Description |
137
- | ----------------------- | --------------------------------------------------------- |
138
- | `--modules-root <path>` | Path to modules directory (required for module commands) |
139
- | `--app-root <path>` | Path to app-compose directory (required for app commands) |
140
- | `--mocks-root <path>` | Path to mocks directory (default: `./mocks`) |
141
- | `-p, --port <number>` | Reverse proxy port for `mock start` (default: `3000`) |
142
-
143
- At least one of `--modules-root` or `--app-root` is required for `check`, `sync-check`, and `scaffold`.
173
+ | Flag | Alias | Applies to | Description |
174
+ | --------------------- | ----- | ------------------------------------------- | -------------------------------------------- |
175
+ | `--root <path>` | `-r` | `module check/sync-check/scaffold`, `app *` | Path to modules or app-compose directory |
176
+ | `--mocks-root <path>` | | `mock start`, `mock validate` | Path to mocks directory (default: `./mocks`) |
177
+ | `--port <number>` | `-p` | `mock start` | Reverse proxy port (default: `3000`) |
178
+ | `--force` | `-f` | `init` | Overwrite existing files (default: `false`) |
144
179
 
145
180
  ## What's Bundled
146
181
 
147
- | Directory | Contents |
148
- | ------------- | ---------------------------------------------------------------- |
149
- | `schemas/` | YAML schema definitions for all doc types |
150
- | `sync-check/` | Source-to-doc mapping configs |
151
- | `skills/` | 12 agent skills for documentation, implementation, and mocking |
152
- | `rules/` | Development rules and best practices for modules and app-compose |
182
+ | Directory | Contents |
183
+ | ---------- | -------------------------------------------------------------- |
184
+ | `schemas/` | YAML schema definitions for all doc types |
185
+ | `skills/` | 12 agent skills for documentation, implementation, and mocking |
153
186
 
154
187
  ### Schemas
155
188
 
@@ -180,12 +213,6 @@ Mock workflow:
180
213
 
181
214
  1. `mock-scenario` — Scaffold a new Mockoon mock scenario with CRUD routes and error scenarios
182
215
 
183
- ### Development Rules
184
-
185
- - `module-development/` — Structure, commands, models, executors, testing, exports, errors
186
- - `app-compose/` — App structure, frontend screens, components, auth patterns
187
- - `sdk-best-practices/` — Database relations, SDK documentation references
188
-
189
216
  ## Programmatic Mock Server
190
217
 
191
218
  The `createMockServer` helper starts a Mockoon server from a `mock.json` file, useful for integration tests: