@ironbackend/core 1.0.0 → 1.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 (40) hide show
  1. package/README.md +108 -0
  2. package/dist/index.d.ts +2 -4
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +30 -95
  5. package/dist/index.js.map +1 -1
  6. package/dist/rules/index.js +35 -43
  7. package/dist/rules/index.js.map +1 -1
  8. package/dist/schema.d.ts +151 -0
  9. package/dist/schema.d.ts.map +1 -0
  10. package/dist/schema.js +97 -0
  11. package/dist/schema.js.map +1 -0
  12. package/dist/security/index.js +17 -22
  13. package/dist/security/index.js.map +1 -1
  14. package/dist/stacks/index.js +15 -21
  15. package/dist/stacks/index.js.map +1 -1
  16. package/dist/styles/clean-monolith.js +1 -4
  17. package/dist/styles/clean-monolith.js.map +1 -1
  18. package/dist/styles/event-driven.js +2 -5
  19. package/dist/styles/event-driven.js.map +1 -1
  20. package/dist/styles/hexagonal.js +1 -4
  21. package/dist/styles/hexagonal.js.map +1 -1
  22. package/dist/styles/index.d.ts +2 -2
  23. package/dist/styles/index.d.ts.map +1 -1
  24. package/dist/styles/index.js +28 -41
  25. package/dist/styles/index.js.map +1 -1
  26. package/dist/styles/microservices.js +2 -5
  27. package/dist/styles/microservices.js.map +1 -1
  28. package/dist/styles/modular-monolith.js +1 -4
  29. package/dist/styles/modular-monolith.js.map +1 -1
  30. package/dist/styles/specialized.js +3 -6
  31. package/dist/styles/specialized.js.map +1 -1
  32. package/dist/types.d.ts +55 -0
  33. package/dist/types.d.ts.map +1 -1
  34. package/dist/types.js +1 -2
  35. package/dist/types.js.map +1 -1
  36. package/dist/utils/performance.d.ts +31 -0
  37. package/dist/utils/performance.d.ts.map +1 -0
  38. package/dist/utils/performance.js +71 -0
  39. package/dist/utils/performance.js.map +1 -0
  40. package/package.json +6 -2
package/README.md ADDED
@@ -0,0 +1,108 @@
1
+ # @ironbackend/core
2
+
3
+ Backend architecture knowledge base for AI coding assistants.
4
+
5
+ [![npm version](https://img.shields.io/npm/v/@ironbackend/core)](https://www.npmjs.com/package/@ironbackend/core)
6
+ [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](../../LICENSE)
7
+
8
+ ## What's Inside
9
+
10
+ - **10 Architecture Styles** - Clean Monolith, Hexagonal, CQRS, Microservices, and more
11
+ - **4 Tech Stacks** - Node/NestJS, Java/Spring, .NET/ASP.NET Core, Python/FastAPI
12
+ - **50+ Design Rules** - API, domain, error handling, transactions, naming conventions
13
+ - **Security Playbooks** - Authentication strategies and security guidelines
14
+
15
+ ## Installation
16
+
17
+ ```bash
18
+ npm install @ironbackend/core
19
+ ```
20
+
21
+ ## Usage
22
+
23
+ ```typescript
24
+ import {
25
+ getStyle,
26
+ getStack,
27
+ allRules,
28
+ securityPlaybook
29
+ } from '@ironbackend/core';
30
+
31
+ // Get an architecture style
32
+ const hexagonal = getStyle('hexagonal');
33
+ console.log(hexagonal.name); // 'Hexagonal Architecture'
34
+ console.log(hexagonal.principles); // ['Domain and application core...', ...]
35
+
36
+ // Get a tech stack
37
+ const nestjs = getStack('node-nestjs');
38
+ console.log(nestjs.framework); // 'NestJS'
39
+ console.log(nestjs.conventions); // Stack-specific conventions
40
+
41
+ // Access design rules
42
+ console.log(allRules.length); // 50+ rules
43
+ const apiRules = allRules.filter(r => r.category === 'api');
44
+
45
+ // Security playbook
46
+ console.log(securityPlaybook.authStrategies);
47
+ ```
48
+
49
+ ## Architecture Styles
50
+
51
+ | ID | Name | Best For |
52
+ |----|------|----------|
53
+ | `clean-monolith` | Clean Monolith | Small teams, startups |
54
+ | `modular-monolith` | Modular Monolith | Growing teams, bounded contexts |
55
+ | `hexagonal` | Hexagonal | Test-driven development |
56
+ | `event-driven` | Event-Driven | High throughput |
57
+ | `cqrs` | CQRS | Read-heavy workloads |
58
+ | `microservices-sync` | Microservices (Sync) | Multiple teams |
59
+ | `microservices-async` | Microservices (Async) | Decoupled services |
60
+ | `serverless` | Serverless | Variable traffic |
61
+ | `read-heavy` | Read-Heavy API | Aggressive caching |
62
+ | `automation` | Automation/Bot | Scheduled jobs |
63
+
64
+ ## Tech Stacks
65
+
66
+ | ID | Stack |
67
+ |----|-------|
68
+ | `node-nestjs` | Node.js + NestJS + PostgreSQL |
69
+ | `java-spring` | Java + Spring Boot + PostgreSQL |
70
+ | `dotnet-aspnetcore` | .NET + ASP.NET Core + SQL Server |
71
+ | `python-fastapi` | Python + FastAPI + PostgreSQL |
72
+
73
+ ## API Reference
74
+
75
+ ### Styles
76
+
77
+ ```typescript
78
+ getStyle(id: string): ArchitectureStyle | undefined
79
+ getStyleIds(): string[]
80
+ findStyles(filter: Partial<ArchitectureStyle>): ArchitectureStyle[]
81
+ ```
82
+
83
+ ### Stacks
84
+
85
+ ```typescript
86
+ getStack(id: string): TechStack | undefined
87
+ getStackIds(): string[]
88
+ findStacksByLanguage(language: string): TechStack[]
89
+ ```
90
+
91
+ ### Rules
92
+
93
+ ```typescript
94
+ allRules: DesignRule[]
95
+ getRulesByCategory(category: string): DesignRule[]
96
+ getRule(id: string): DesignRule | undefined
97
+ getErrorRules(): DesignRule[]
98
+ getWarnRules(): DesignRule[]
99
+ ```
100
+
101
+ ## Related Packages
102
+
103
+ - [`@ironbackend/cli`](https://www.npmjs.com/package/@ironbackend/cli) - CLI tool
104
+ - [`@ironbackend/prompts`](https://www.npmjs.com/package/@ironbackend/prompts) - Prompt builders
105
+
106
+ ## License
107
+
108
+ MIT
package/dist/index.d.ts CHANGED
@@ -9,6 +9,7 @@
9
9
  * - Security & reliability playbooks
10
10
  */
11
11
  export * from './types.js';
12
+ export * from './schema.js';
12
13
  export * as styles from './styles/index.js';
13
14
  export { getStyle, getStyleIds, findStyles, cleanMonolith, modularMonolith, hexagonal, eventDriven, cqrs, microservicesSync, microservicesAsync, serverless, readHeavy, automation, } from './styles/index.js';
14
15
  export * as stacks from './stacks/index.js';
@@ -17,10 +18,7 @@ export * as rules from './rules/index.js';
17
18
  export { allRules, rulesByCategory, getRulesByCategory, getRule, getErrorRules, getWarnRules, formatRulesForPrompt, apiRules, domainRules, errorHandlingRules, transactionRules, dataAccessRules, namingRules, validationRules, asyncRules, } from './rules/index.js';
18
19
  export * as security from './security/index.js';
19
20
  export { securityPlaybook, authStrategies, getAuthStrategy, formatSecurityForPrompt, } from './security/index.js';
20
- /**
21
- * IronBackend version
22
- */
23
- export declare const VERSION = "1.0.0";
21
+ export declare const VERSION: string;
24
22
  /**
25
23
  * Quick access to all data
26
24
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,cAAc,YAAY,CAAC;AAG3B,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACH,QAAQ,EACR,WAAW,EACX,UAAU,EACV,aAAa,EACb,eAAe,EACf,SAAS,EACT,WAAW,EACX,IAAI,EACJ,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,UAAU,GACb,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACH,QAAQ,EACR,WAAW,EACX,oBAAoB,EACpB,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,aAAa,GAChB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EACH,QAAQ,EACR,eAAe,EACf,kBAAkB,EAClB,OAAO,EACP,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,eAAe,EACf,UAAU,GACb,MAAM,kBAAkB,CAAC;AAG1B,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,uBAAuB,GAC1B,MAAM,qBAAqB,CAAC;AAE7B;;GAEG;AACH,eAAO,MAAM,OAAO,UAAU,CAAC;AAO/B;;GAEG;AACH,wBAAgB,UAAU;;;;;EAOzB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,cAAc,YAAY,CAAC;AAG3B,cAAc,aAAa,CAAC;AAG5B,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACH,QAAQ,EACR,WAAW,EACX,UAAU,EACV,aAAa,EACb,eAAe,EACf,SAAS,EACT,WAAW,EACX,IAAI,EACJ,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,UAAU,GACb,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACH,QAAQ,EACR,WAAW,EACX,oBAAoB,EACpB,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,aAAa,GAChB,MAAM,mBAAmB,CAAC;AAG3B,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EACH,QAAQ,EACR,eAAe,EACf,kBAAkB,EAClB,OAAO,EACP,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,eAAe,EACf,UAAU,GACb,MAAM,kBAAkB,CAAC;AAG1B,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,uBAAuB,GAC1B,MAAM,qBAAqB,CAAC;AAkB7B,eAAO,MAAM,OAAO,QAAe,CAAC;AAOpC;;GAEG;AACH,wBAAgB,UAAU;;;;;EAOzB"}
package/dist/index.js CHANGED
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  /**
3
2
  * @ironbackend/core
4
3
  * Backend Architecture Intelligence for AI Coding Assistants
@@ -9,110 +8,46 @@
9
8
  * - Design rules database
10
9
  * - Security & reliability playbooks
11
10
  */
12
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
13
- if (k2 === undefined) k2 = k;
14
- var desc = Object.getOwnPropertyDescriptor(m, k);
15
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
16
- desc = { enumerable: true, get: function() { return m[k]; } };
17
- }
18
- Object.defineProperty(o, k2, desc);
19
- }) : (function(o, m, k, k2) {
20
- if (k2 === undefined) k2 = k;
21
- o[k2] = m[k];
22
- }));
23
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
24
- Object.defineProperty(o, "default", { enumerable: true, value: v });
25
- }) : function(o, v) {
26
- o["default"] = v;
27
- });
28
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
29
- for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
30
- };
31
- var __importStar = (this && this.__importStar) || (function () {
32
- var ownKeys = function(o) {
33
- ownKeys = Object.getOwnPropertyNames || function (o) {
34
- var ar = [];
35
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
36
- return ar;
37
- };
38
- return ownKeys(o);
39
- };
40
- return function (mod) {
41
- if (mod && mod.__esModule) return mod;
42
- var result = {};
43
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
44
- __setModuleDefault(result, mod);
45
- return result;
46
- };
47
- })();
48
- Object.defineProperty(exports, "__esModule", { value: true });
49
- exports.VERSION = exports.formatSecurityForPrompt = exports.getAuthStrategy = exports.authStrategies = exports.securityPlaybook = exports.security = exports.asyncRules = exports.validationRules = exports.namingRules = exports.dataAccessRules = exports.transactionRules = exports.errorHandlingRules = exports.domainRules = exports.apiRules = exports.formatRulesForPrompt = exports.getWarnRules = exports.getErrorRules = exports.getRule = exports.getRulesByCategory = exports.rulesByCategory = exports.allRules = exports.rules = exports.pythonFastapi = exports.dotnetAspnetcore = exports.javaSpring = exports.nodeNestjs = exports.findStacksByLanguage = exports.getStackIds = exports.getStack = exports.stacks = exports.automation = exports.readHeavy = exports.serverless = exports.microservicesAsync = exports.microservicesSync = exports.cqrs = exports.eventDriven = exports.hexagonal = exports.modularMonolith = exports.cleanMonolith = exports.findStyles = exports.getStyleIds = exports.getStyle = exports.styles = void 0;
50
- exports.getAllData = getAllData;
51
11
  // Types
52
- __exportStar(require("./types.js"), exports);
12
+ export * from './types.js';
13
+ // Schema Validation
14
+ export * from './schema.js';
53
15
  // Architecture Styles
54
- exports.styles = __importStar(require("./styles/index.js"));
55
- var index_js_1 = require("./styles/index.js");
56
- Object.defineProperty(exports, "getStyle", { enumerable: true, get: function () { return index_js_1.getStyle; } });
57
- Object.defineProperty(exports, "getStyleIds", { enumerable: true, get: function () { return index_js_1.getStyleIds; } });
58
- Object.defineProperty(exports, "findStyles", { enumerable: true, get: function () { return index_js_1.findStyles; } });
59
- Object.defineProperty(exports, "cleanMonolith", { enumerable: true, get: function () { return index_js_1.cleanMonolith; } });
60
- Object.defineProperty(exports, "modularMonolith", { enumerable: true, get: function () { return index_js_1.modularMonolith; } });
61
- Object.defineProperty(exports, "hexagonal", { enumerable: true, get: function () { return index_js_1.hexagonal; } });
62
- Object.defineProperty(exports, "eventDriven", { enumerable: true, get: function () { return index_js_1.eventDriven; } });
63
- Object.defineProperty(exports, "cqrs", { enumerable: true, get: function () { return index_js_1.cqrs; } });
64
- Object.defineProperty(exports, "microservicesSync", { enumerable: true, get: function () { return index_js_1.microservicesSync; } });
65
- Object.defineProperty(exports, "microservicesAsync", { enumerable: true, get: function () { return index_js_1.microservicesAsync; } });
66
- Object.defineProperty(exports, "serverless", { enumerable: true, get: function () { return index_js_1.serverless; } });
67
- Object.defineProperty(exports, "readHeavy", { enumerable: true, get: function () { return index_js_1.readHeavy; } });
68
- Object.defineProperty(exports, "automation", { enumerable: true, get: function () { return index_js_1.automation; } });
16
+ export * as styles from './styles/index.js';
17
+ export { getStyle, getStyleIds, findStyles, cleanMonolith, modularMonolith, hexagonal, eventDriven, cqrs, microservicesSync, microservicesAsync, serverless, readHeavy, automation, } from './styles/index.js';
69
18
  // Tech Stacks
70
- exports.stacks = __importStar(require("./stacks/index.js"));
71
- var index_js_2 = require("./stacks/index.js");
72
- Object.defineProperty(exports, "getStack", { enumerable: true, get: function () { return index_js_2.getStack; } });
73
- Object.defineProperty(exports, "getStackIds", { enumerable: true, get: function () { return index_js_2.getStackIds; } });
74
- Object.defineProperty(exports, "findStacksByLanguage", { enumerable: true, get: function () { return index_js_2.findStacksByLanguage; } });
75
- Object.defineProperty(exports, "nodeNestjs", { enumerable: true, get: function () { return index_js_2.nodeNestjs; } });
76
- Object.defineProperty(exports, "javaSpring", { enumerable: true, get: function () { return index_js_2.javaSpring; } });
77
- Object.defineProperty(exports, "dotnetAspnetcore", { enumerable: true, get: function () { return index_js_2.dotnetAspnetcore; } });
78
- Object.defineProperty(exports, "pythonFastapi", { enumerable: true, get: function () { return index_js_2.pythonFastapi; } });
19
+ export * as stacks from './stacks/index.js';
20
+ export { getStack, getStackIds, findStacksByLanguage, nodeNestjs, javaSpring, dotnetAspnetcore, pythonFastapi, } from './stacks/index.js';
79
21
  // Design Rules
80
- exports.rules = __importStar(require("./rules/index.js"));
81
- var index_js_3 = require("./rules/index.js");
82
- Object.defineProperty(exports, "allRules", { enumerable: true, get: function () { return index_js_3.allRules; } });
83
- Object.defineProperty(exports, "rulesByCategory", { enumerable: true, get: function () { return index_js_3.rulesByCategory; } });
84
- Object.defineProperty(exports, "getRulesByCategory", { enumerable: true, get: function () { return index_js_3.getRulesByCategory; } });
85
- Object.defineProperty(exports, "getRule", { enumerable: true, get: function () { return index_js_3.getRule; } });
86
- Object.defineProperty(exports, "getErrorRules", { enumerable: true, get: function () { return index_js_3.getErrorRules; } });
87
- Object.defineProperty(exports, "getWarnRules", { enumerable: true, get: function () { return index_js_3.getWarnRules; } });
88
- Object.defineProperty(exports, "formatRulesForPrompt", { enumerable: true, get: function () { return index_js_3.formatRulesForPrompt; } });
89
- Object.defineProperty(exports, "apiRules", { enumerable: true, get: function () { return index_js_3.apiRules; } });
90
- Object.defineProperty(exports, "domainRules", { enumerable: true, get: function () { return index_js_3.domainRules; } });
91
- Object.defineProperty(exports, "errorHandlingRules", { enumerable: true, get: function () { return index_js_3.errorHandlingRules; } });
92
- Object.defineProperty(exports, "transactionRules", { enumerable: true, get: function () { return index_js_3.transactionRules; } });
93
- Object.defineProperty(exports, "dataAccessRules", { enumerable: true, get: function () { return index_js_3.dataAccessRules; } });
94
- Object.defineProperty(exports, "namingRules", { enumerable: true, get: function () { return index_js_3.namingRules; } });
95
- Object.defineProperty(exports, "validationRules", { enumerable: true, get: function () { return index_js_3.validationRules; } });
96
- Object.defineProperty(exports, "asyncRules", { enumerable: true, get: function () { return index_js_3.asyncRules; } });
22
+ export * as rules from './rules/index.js';
23
+ export { allRules, rulesByCategory, getRulesByCategory, getRule, getErrorRules, getWarnRules, formatRulesForPrompt, apiRules, domainRules, errorHandlingRules, transactionRules, dataAccessRules, namingRules, validationRules, asyncRules, } from './rules/index.js';
97
24
  // Security
98
- exports.security = __importStar(require("./security/index.js"));
99
- var index_js_4 = require("./security/index.js");
100
- Object.defineProperty(exports, "securityPlaybook", { enumerable: true, get: function () { return index_js_4.securityPlaybook; } });
101
- Object.defineProperty(exports, "authStrategies", { enumerable: true, get: function () { return index_js_4.authStrategies; } });
102
- Object.defineProperty(exports, "getAuthStrategy", { enumerable: true, get: function () { return index_js_4.getAuthStrategy; } });
103
- Object.defineProperty(exports, "formatSecurityForPrompt", { enumerable: true, get: function () { return index_js_4.formatSecurityForPrompt; } });
25
+ export * as security from './security/index.js';
26
+ export { securityPlaybook, authStrategies, getAuthStrategy, formatSecurityForPrompt, } from './security/index.js';
27
+ import { createRequire } from 'module';
104
28
  /**
105
- * IronBackend version
29
+ * IronBackend version - dynamically read from package.json
106
30
  */
107
- exports.VERSION = '1.0.0';
108
- const _styles = __importStar(require("./styles/index.js"));
109
- const _stacks = __importStar(require("./stacks/index.js"));
110
- const _rules = __importStar(require("./rules/index.js"));
111
- const _security = __importStar(require("./security/index.js"));
31
+ const getVersion = () => {
32
+ try {
33
+ const require = createRequire(import.meta.url);
34
+ const pkg = require('../package.json');
35
+ return pkg.version;
36
+ }
37
+ catch {
38
+ // Fallback for edge cases
39
+ return '1.0.0';
40
+ }
41
+ };
42
+ export const VERSION = getVersion();
43
+ import * as _styles from './styles/index.js';
44
+ import * as _stacks from './stacks/index.js';
45
+ import * as _rules from './rules/index.js';
46
+ import * as _security from './security/index.js';
112
47
  /**
113
48
  * Quick access to all data
114
49
  */
115
- function getAllData() {
50
+ export function getAllData() {
116
51
  return {
117
52
  styles: _styles.styles,
118
53
  stacks: _stacks.stacks,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;GASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6EH,gCAOC;AAlFD,QAAQ;AACR,6CAA2B;AAE3B,sBAAsB;AACtB,4DAA4C;AAC5C,8CAc2B;AAbvB,oGAAA,QAAQ,OAAA;AACR,uGAAA,WAAW,OAAA;AACX,sGAAA,UAAU,OAAA;AACV,yGAAA,aAAa,OAAA;AACb,2GAAA,eAAe,OAAA;AACf,qGAAA,SAAS,OAAA;AACT,uGAAA,WAAW,OAAA;AACX,gGAAA,IAAI,OAAA;AACJ,6GAAA,iBAAiB,OAAA;AACjB,8GAAA,kBAAkB,OAAA;AAClB,sGAAA,UAAU,OAAA;AACV,qGAAA,SAAS,OAAA;AACT,sGAAA,UAAU,OAAA;AAGd,cAAc;AACd,4DAA4C;AAC5C,8CAQ2B;AAPvB,oGAAA,QAAQ,OAAA;AACR,uGAAA,WAAW,OAAA;AACX,gHAAA,oBAAoB,OAAA;AACpB,sGAAA,UAAU,OAAA;AACV,sGAAA,UAAU,OAAA;AACV,4GAAA,gBAAgB,OAAA;AAChB,yGAAA,aAAa,OAAA;AAGjB,eAAe;AACf,0DAA0C;AAC1C,6CAgB0B;AAftB,oGAAA,QAAQ,OAAA;AACR,2GAAA,eAAe,OAAA;AACf,8GAAA,kBAAkB,OAAA;AAClB,mGAAA,OAAO,OAAA;AACP,yGAAA,aAAa,OAAA;AACb,wGAAA,YAAY,OAAA;AACZ,gHAAA,oBAAoB,OAAA;AACpB,oGAAA,QAAQ,OAAA;AACR,uGAAA,WAAW,OAAA;AACX,8GAAA,kBAAkB,OAAA;AAClB,4GAAA,gBAAgB,OAAA;AAChB,2GAAA,eAAe,OAAA;AACf,uGAAA,WAAW,OAAA;AACX,2GAAA,eAAe,OAAA;AACf,sGAAA,UAAU,OAAA;AAGd,WAAW;AACX,gEAAgD;AAChD,gDAK6B;AAJzB,4GAAA,gBAAgB,OAAA;AAChB,0GAAA,cAAc,OAAA;AACd,2GAAA,eAAe,OAAA;AACf,mHAAA,uBAAuB,OAAA;AAG3B;;GAEG;AACU,QAAA,OAAO,GAAG,OAAO,CAAC;AAE/B,2DAA6C;AAC7C,2DAA6C;AAC7C,yDAA2C;AAC3C,+DAAiD;AAEjD;;GAEG;AACH,SAAgB,UAAU;IACtB,OAAO;QACH,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,MAAM,CAAC,QAAQ;QACtB,QAAQ,EAAE,SAAS,CAAC,gBAAgB;KACvC,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,QAAQ;AACR,cAAc,YAAY,CAAC;AAE3B,oBAAoB;AACpB,cAAc,aAAa,CAAC;AAE5B,sBAAsB;AACtB,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACH,QAAQ,EACR,WAAW,EACX,UAAU,EACV,aAAa,EACb,eAAe,EACf,SAAS,EACT,WAAW,EACX,IAAI,EACJ,iBAAiB,EACjB,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,UAAU,GACb,MAAM,mBAAmB,CAAC;AAE3B,cAAc;AACd,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAAO,EACH,QAAQ,EACR,WAAW,EACX,oBAAoB,EACpB,UAAU,EACV,UAAU,EACV,gBAAgB,EAChB,aAAa,GAChB,MAAM,mBAAmB,CAAC;AAE3B,eAAe;AACf,OAAO,KAAK,KAAK,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EACH,QAAQ,EACR,eAAe,EACf,kBAAkB,EAClB,OAAO,EACP,aAAa,EACb,YAAY,EACZ,oBAAoB,EACpB,QAAQ,EACR,WAAW,EACX,kBAAkB,EAClB,gBAAgB,EAChB,eAAe,EACf,WAAW,EACX,eAAe,EACf,UAAU,GACb,MAAM,kBAAkB,CAAC;AAE1B,WAAW;AACX,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,uBAAuB,GAC1B,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAEvC;;GAEG;AACH,MAAM,UAAU,GAAG,GAAW,EAAE;IAC5B,IAAI,CAAC;QACD,MAAM,OAAO,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACvC,OAAO,GAAG,CAAC,OAAO,CAAC;IACvB,CAAC;IAAC,MAAM,CAAC;QACL,0BAA0B;QAC1B,OAAO,OAAO,CAAC;IACnB,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;AAEpC,OAAO,KAAK,OAAO,MAAM,mBAAmB,CAAC;AAC7C,OAAO,KAAK,OAAO,MAAM,mBAAmB,CAAC;AAC7C,OAAO,KAAK,MAAM,MAAM,kBAAkB,CAAC;AAC3C,OAAO,KAAK,SAAS,MAAM,qBAAqB,CAAC;AAEjD;;GAEG;AACH,MAAM,UAAU,UAAU;IACtB,OAAO;QACH,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,KAAK,EAAE,MAAM,CAAC,QAAQ;QACtB,QAAQ,EAAE,SAAS,CAAC,gBAAgB;KACvC,CAAC;AACN,CAAC"}
@@ -1,19 +1,11 @@
1
- "use strict";
2
1
  /**
3
2
  * IronBackend Design Rules
4
3
  * Enforceable rules for backend development
5
4
  */
6
- Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.rulesByCategory = exports.allRules = exports.asyncRules = exports.validationRules = exports.namingRules = exports.dataAccessRules = exports.transactionRules = exports.errorHandlingRules = exports.domainRules = exports.apiRules = void 0;
8
- exports.getRulesByCategory = getRulesByCategory;
9
- exports.getRule = getRule;
10
- exports.getErrorRules = getErrorRules;
11
- exports.getWarnRules = getWarnRules;
12
- exports.formatRulesForPrompt = formatRulesForPrompt;
13
5
  // ============================================================================
14
6
  // API Design Rules
15
7
  // ============================================================================
16
- exports.apiRules = [
8
+ export const apiRules = [
17
9
  {
18
10
  id: 'API-001',
19
11
  category: 'API',
@@ -88,7 +80,7 @@ exports.apiRules = [
88
80
  // ============================================================================
89
81
  // Domain Modeling Rules
90
82
  // ============================================================================
91
- exports.domainRules = [
83
+ export const domainRules = [
92
84
  {
93
85
  id: 'DOM-001',
94
86
  category: 'DOMAIN',
@@ -149,7 +141,7 @@ exports.domainRules = [
149
141
  // ============================================================================
150
142
  // Error Handling Rules
151
143
  // ============================================================================
152
- exports.errorHandlingRules = [
144
+ export const errorHandlingRules = [
153
145
  {
154
146
  id: 'ERR-001',
155
147
  category: 'ERROR_HANDLING',
@@ -210,7 +202,7 @@ exports.errorHandlingRules = [
210
202
  // ============================================================================
211
203
  // Transaction Rules
212
204
  // ============================================================================
213
- exports.transactionRules = [
205
+ export const transactionRules = [
214
206
  {
215
207
  id: 'TXN-001',
216
208
  category: 'TRANSACTIONS',
@@ -257,7 +249,7 @@ exports.transactionRules = [
257
249
  // ============================================================================
258
250
  // Data Access Rules
259
251
  // ============================================================================
260
- exports.dataAccessRules = [
252
+ export const dataAccessRules = [
261
253
  {
262
254
  id: 'DAT-001',
263
255
  category: 'DATA_ACCESS',
@@ -311,7 +303,7 @@ exports.dataAccessRules = [
311
303
  // ============================================================================
312
304
  // Naming Rules
313
305
  // ============================================================================
314
- exports.namingRules = [
306
+ export const namingRules = [
315
307
  {
316
308
  id: 'NAM-001',
317
309
  category: 'NAMING',
@@ -365,7 +357,7 @@ exports.namingRules = [
365
357
  // ============================================================================
366
358
  // Validation Rules
367
359
  // ============================================================================
368
- exports.validationRules = [
360
+ export const validationRules = [
369
361
  {
370
362
  id: 'VAL-001',
371
363
  category: 'VALIDATION',
@@ -405,7 +397,7 @@ exports.validationRules = [
405
397
  // ============================================================================
406
398
  // Async / Concurrency Rules
407
399
  // ============================================================================
408
- exports.asyncRules = [
400
+ export const asyncRules = [
409
401
  {
410
402
  id: 'ASY-001',
411
403
  category: 'ASYNC',
@@ -452,54 +444,54 @@ exports.asyncRules = [
452
444
  // ============================================================================
453
445
  // Aggregated Exports
454
446
  // ============================================================================
455
- exports.allRules = [
456
- ...exports.apiRules,
457
- ...exports.domainRules,
458
- ...exports.errorHandlingRules,
459
- ...exports.transactionRules,
460
- ...exports.dataAccessRules,
461
- ...exports.namingRules,
462
- ...exports.validationRules,
463
- ...exports.asyncRules,
447
+ export const allRules = [
448
+ ...apiRules,
449
+ ...domainRules,
450
+ ...errorHandlingRules,
451
+ ...transactionRules,
452
+ ...dataAccessRules,
453
+ ...namingRules,
454
+ ...validationRules,
455
+ ...asyncRules,
464
456
  ];
465
- exports.rulesByCategory = {
466
- 'API': exports.apiRules,
467
- 'DOMAIN': exports.domainRules,
468
- 'ERROR_HANDLING': exports.errorHandlingRules,
469
- 'TRANSACTIONS': exports.transactionRules,
470
- 'DATA_ACCESS': exports.dataAccessRules,
471
- 'NAMING': exports.namingRules,
472
- 'VALIDATION': exports.validationRules,
473
- 'ASYNC': exports.asyncRules,
457
+ export const rulesByCategory = {
458
+ 'API': apiRules,
459
+ 'DOMAIN': domainRules,
460
+ 'ERROR_HANDLING': errorHandlingRules,
461
+ 'TRANSACTIONS': transactionRules,
462
+ 'DATA_ACCESS': dataAccessRules,
463
+ 'NAMING': namingRules,
464
+ 'VALIDATION': validationRules,
465
+ 'ASYNC': asyncRules,
474
466
  };
475
467
  /**
476
468
  * Get rules by category
477
469
  */
478
- function getRulesByCategory(category) {
479
- return exports.rulesByCategory[category] || [];
470
+ export function getRulesByCategory(category) {
471
+ return rulesByCategory[category] || [];
480
472
  }
481
473
  /**
482
474
  * Get rule by ID
483
475
  */
484
- function getRule(id) {
485
- return exports.allRules.find(rule => rule.id === id);
476
+ export function getRule(id) {
477
+ return allRules.find(rule => rule.id === id);
486
478
  }
487
479
  /**
488
480
  * Get all ERROR severity rules
489
481
  */
490
- function getErrorRules() {
491
- return exports.allRules.filter(rule => rule.severity === 'ERROR');
482
+ export function getErrorRules() {
483
+ return allRules.filter(rule => rule.severity === 'ERROR');
492
484
  }
493
485
  /**
494
486
  * Get all WARN severity rules
495
487
  */
496
- function getWarnRules() {
497
- return exports.allRules.filter(rule => rule.severity === 'WARN');
488
+ export function getWarnRules() {
489
+ return allRules.filter(rule => rule.severity === 'WARN');
498
490
  }
499
491
  /**
500
492
  * Format rules for AI prompt
501
493
  */
502
- function formatRulesForPrompt(rules) {
494
+ export function formatRulesForPrompt(rules) {
503
495
  return rules.map(rule => `[${rule.severity}] ${rule.id}: ${rule.rule}`).join('\n');
504
496
  }
505
497
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/rules/index.ts"],"names":[],"mappings":"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"}