create-qa-architect 5.0.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/.editorconfig +12 -0
- package/.github/CLAUDE_MD_AUTOMATION.md +248 -0
- package/.github/PROGRESSIVE_QUALITY_IMPLEMENTATION.md +408 -0
- package/.github/PROGRESSIVE_QUALITY_PROPOSAL.md +443 -0
- package/.github/RELEASE_CHECKLIST.md +100 -0
- package/.github/dependabot.yml +50 -0
- package/.github/git-sync.sh +48 -0
- package/.github/workflows/claude-md-validation.yml +82 -0
- package/.github/workflows/nightly-gitleaks-verification.yml +176 -0
- package/.github/workflows/pnpm-ci.yml.example +53 -0
- package/.github/workflows/python-ci.yml.example +69 -0
- package/.github/workflows/quality-legacy.yml.backup +165 -0
- package/.github/workflows/quality-progressive.yml.example +291 -0
- package/.github/workflows/quality.yml +436 -0
- package/.github/workflows/release.yml +53 -0
- package/.nvmrc +1 -0
- package/.prettierignore +14 -0
- package/.prettierrc +9 -0
- package/.stylelintrc.json +5 -0
- package/README.md +212 -0
- package/config/.lighthouserc.js +45 -0
- package/config/.pre-commit-config.yaml +66 -0
- package/config/constants.js +128 -0
- package/config/defaults.js +124 -0
- package/config/pyproject.toml +124 -0
- package/config/quality-config.schema.json +97 -0
- package/config/quality-python.yml +89 -0
- package/config/requirements-dev.txt +15 -0
- package/create-saas-monetization.js +1465 -0
- package/eslint.config.cjs +117 -0
- package/eslint.config.ts.cjs +99 -0
- package/legal/README.md +106 -0
- package/legal/copyright.md +76 -0
- package/legal/disclaimer.md +146 -0
- package/legal/privacy-policy.html +324 -0
- package/legal/privacy-policy.md +196 -0
- package/legal/terms-of-service.md +224 -0
- package/lib/billing-dashboard.html +645 -0
- package/lib/config-validator.js +163 -0
- package/lib/dependency-monitoring-basic.js +185 -0
- package/lib/dependency-monitoring-premium.js +1490 -0
- package/lib/error-reporter.js +444 -0
- package/lib/interactive/prompt.js +128 -0
- package/lib/interactive/questions.js +146 -0
- package/lib/license-validator.js +403 -0
- package/lib/licensing.js +989 -0
- package/lib/package-utils.js +187 -0
- package/lib/project-maturity.js +516 -0
- package/lib/security-enhancements.js +340 -0
- package/lib/setup-enhancements.js +317 -0
- package/lib/smart-strategy-generator.js +344 -0
- package/lib/telemetry.js +323 -0
- package/lib/template-loader.js +252 -0
- package/lib/typescript-config-generator.js +210 -0
- package/lib/ui-helpers.js +74 -0
- package/lib/validation/base-validator.js +174 -0
- package/lib/validation/cache-manager.js +158 -0
- package/lib/validation/config-security.js +741 -0
- package/lib/validation/documentation.js +326 -0
- package/lib/validation/index.js +186 -0
- package/lib/validation/validation-factory.js +153 -0
- package/lib/validation/workflow-validation.js +172 -0
- package/lib/yaml-utils.js +120 -0
- package/marketing/beta-user-email-campaign.md +372 -0
- package/marketing/landing-page.html +721 -0
- package/package.json +165 -0
- package/setup.js +2076 -0
package/package.json
ADDED
|
@@ -0,0 +1,165 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "create-qa-architect",
|
|
3
|
+
"version": "5.0.0",
|
|
4
|
+
"description": "QA Architect - Bootstrap quality automation for JavaScript/TypeScript and Python projects with GitHub Actions, pre-commit hooks, linting, formatting, and smart test strategy",
|
|
5
|
+
"main": "setup.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"create-qa-architect": "./setup.js",
|
|
8
|
+
"create-saas-monetization": "./create-saas-monetization.js"
|
|
9
|
+
},
|
|
10
|
+
"scripts": {
|
|
11
|
+
"prepare": "husky",
|
|
12
|
+
"format": "prettier --write .",
|
|
13
|
+
"format:check": "prettier --check .",
|
|
14
|
+
"lint": "eslint . && stylelint \"**/*.{css,scss,sass,less,pcss}\" --allow-empty-input",
|
|
15
|
+
"lint:fix": "eslint . --fix && stylelint \"**/*.{css,scss,sass,less,pcss}\" --fix --allow-empty-input",
|
|
16
|
+
"security:audit": "npm audit --audit-level high",
|
|
17
|
+
"security:secrets": "node -e \"const fs=require('fs');const content=fs.readFileSync('package.json','utf8');if(/[\\\"\\'][a-zA-Z0-9+/]{20,}[\\\"\\']/.test(content)){console.error('❌ Potential hardcoded secrets in package.json');process.exit(1)}else{console.log('✅ No secrets detected in package.json')}\"",
|
|
18
|
+
"security:config": "node setup.js --security-config",
|
|
19
|
+
"validate:docs": "node setup.js --validate-docs",
|
|
20
|
+
"validate:claude": "node scripts/validate-claude-md.js",
|
|
21
|
+
"validate:comprehensive": "node setup.js --comprehensive --no-markdownlint",
|
|
22
|
+
"validate:all": "npm run validate:comprehensive && npm run security:audit && npm run validate:claude",
|
|
23
|
+
"validate:pre-push": "npm run test:patterns --if-present && npm run lint && npm run format:check && npm run test:commands --if-present && npm test --if-present",
|
|
24
|
+
"test": "node tests/setup.test.js && node tests/integration.test.js && node tests/error-paths.test.js && node tests/error-messages.test.js && node tests/cache-manager.test.js && node tests/parallel-validation.test.js && node tests/python-integration.test.js && node tests/interactive.test.js && node tests/monorepo.test.js && node tests/template-loader.test.js && node tests/critical-fixes.test.js && node tests/interactive-routing-fix.test.js && node tests/telemetry.test.js && node tests/error-reporter.test.js && node tests/premium-dependency-monitoring.test.js && node tests/multi-language-dependency-monitoring.test.js && node tests/cli-deps-integration.test.js && node tests/real-world-packages.test.js && node tests/validation-factory.test.js && node tests/setup-error-coverage.test.js && node tests/python-detection-sensitivity.test.js && node tests/python-parser-fixes.test.js && node tests/licensing.test.js && node tests/security-licensing.test.js && node tests/real-purchase-flow.test.js && node tests/base-validator.test.js && node tests/dependency-monitoring-basic.test.js && node tests/workflow-validation.test.js && node tests/setup-critical-paths.test.js && node tests/project-maturity.test.js && node tests/project-maturity-cli.test.js && node tests/package-manager-detection.test.js && node tests/check-docs.test.js && node tests/validate-claude-md.test.js && node tests/validate-command-patterns.test.js && node tests/gitleaks-binary-resolution.test.js && node tests/gitleaks-production-checksums.test.js && node tests/gitleaks-checksum-verification.test.js && node tests/gitleaks-real-binary-test.js && node tests/tier-enforcement.test.js",
|
|
25
|
+
"test:unit": "node tests/setup.test.js && node tests/error-paths.test.js && node tests/error-messages.test.js && node tests/cache-manager.test.js && node tests/template-loader.test.js && node tests/telemetry.test.js && node tests/error-reporter.test.js && node tests/validation-factory.test.js && node tests/setup-error-coverage.test.js && node tests/licensing.test.js && node tests/security-licensing.test.js && node tests/base-validator.test.js && node tests/dependency-monitoring-basic.test.js && node tests/workflow-validation.test.js && node tests/setup-critical-paths.test.js && node tests/project-maturity.test.js && node tests/package-manager-detection.test.js && node tests/check-docs.test.js && node tests/validate-claude-md.test.js && node tests/validate-command-patterns.test.js && node tests/gitleaks-binary-resolution.test.js && node tests/gitleaks-production-checksums.test.js && node tests/gitleaks-checksum-verification.test.js",
|
|
26
|
+
"test:fast": "npm run test:unit",
|
|
27
|
+
"test:medium": "npm run test:fast && npm run test:patterns && npm run test:commands",
|
|
28
|
+
"test:slow": "node tests/python-integration.test.js && node tests/interactive.test.js && node tests/monorepo.test.js && node tests/critical-fixes.test.js && node tests/interactive-routing-fix.test.js && node tests/premium-dependency-monitoring.test.js && node tests/multi-language-dependency-monitoring.test.js && node tests/cli-deps-integration.test.js && node tests/real-world-packages.test.js && node tests/python-detection-sensitivity.test.js && node tests/python-parser-fixes.test.js && node tests/real-purchase-flow.test.js && node tests/project-maturity-cli.test.js && node tests/gitleaks-real-binary-test.test.js && npm run test:e2e",
|
|
29
|
+
"test:comprehensive": "npm run test:patterns && npm test && npm run test:commands && npm run test:e2e && npm run security:audit",
|
|
30
|
+
"test:real-binary": "RUN_REAL_BINARY_TEST=1 node tests/gitleaks-real-binary-test.js",
|
|
31
|
+
"test:commands": "node tests/command-execution.test.js",
|
|
32
|
+
"test:patterns": "node scripts/validate-command-patterns.js",
|
|
33
|
+
"test:coverage": "c8 --reporter=html --reporter=text --reporter=lcov npm test",
|
|
34
|
+
"test:e2e": "bash scripts/test-e2e-package.sh",
|
|
35
|
+
"test:all": "npm run test:patterns && npm test && npm run test:commands && npm run test:e2e",
|
|
36
|
+
"coverage": "npm run test:coverage && echo '\nCoverage report generated in coverage/index.html'",
|
|
37
|
+
"docs:check": "bash scripts/check-docs.sh",
|
|
38
|
+
"git:sync": "bash .github/git-sync.sh",
|
|
39
|
+
"prerelease": "npm run docs:check && npm run test:patterns && npm test && npm run test:commands && npm run test:e2e",
|
|
40
|
+
"setup": "node setup.js",
|
|
41
|
+
"release:patch": "npm version patch && git push --follow-tags",
|
|
42
|
+
"release:minor": "npm version minor && git push --follow-tags",
|
|
43
|
+
"release:major": "npm version major && git push --follow-tags"
|
|
44
|
+
},
|
|
45
|
+
"keywords": [
|
|
46
|
+
"qa-architect",
|
|
47
|
+
"quality-automation",
|
|
48
|
+
"quality",
|
|
49
|
+
"automation",
|
|
50
|
+
"prettier",
|
|
51
|
+
"husky",
|
|
52
|
+
"lint-staged",
|
|
53
|
+
"github-actions",
|
|
54
|
+
"template",
|
|
55
|
+
"bootstrap",
|
|
56
|
+
"scaffold",
|
|
57
|
+
"python",
|
|
58
|
+
"javascript",
|
|
59
|
+
"typescript",
|
|
60
|
+
"smart-test-strategy",
|
|
61
|
+
"pre-commit",
|
|
62
|
+
"dependency-monitoring",
|
|
63
|
+
"security-audit"
|
|
64
|
+
],
|
|
65
|
+
"author": "Brett Stark",
|
|
66
|
+
"license": "MIT",
|
|
67
|
+
"files": [
|
|
68
|
+
"setup.js",
|
|
69
|
+
"create-saas-monetization.js",
|
|
70
|
+
"config/",
|
|
71
|
+
"lib/",
|
|
72
|
+
"legal/",
|
|
73
|
+
"marketing/",
|
|
74
|
+
".github/",
|
|
75
|
+
".prettierrc",
|
|
76
|
+
".prettierignore",
|
|
77
|
+
"eslint.config.cjs",
|
|
78
|
+
"eslint.config.ts.cjs",
|
|
79
|
+
".stylelintrc.json",
|
|
80
|
+
".editorconfig",
|
|
81
|
+
".nvmrc"
|
|
82
|
+
],
|
|
83
|
+
"repository": {
|
|
84
|
+
"type": "git",
|
|
85
|
+
"url": "git+https://github.com/brettstark73/qa-architect.git"
|
|
86
|
+
},
|
|
87
|
+
"bugs": {
|
|
88
|
+
"url": "https://github.com/brettstark73/qa-architect/issues"
|
|
89
|
+
},
|
|
90
|
+
"homepage": "https://github.com/brettstark73/qa-architect#readme",
|
|
91
|
+
"engines": {
|
|
92
|
+
"node": ">=20"
|
|
93
|
+
},
|
|
94
|
+
"overrides": {
|
|
95
|
+
"ajv-formats": {
|
|
96
|
+
"ajv": "$ajv"
|
|
97
|
+
},
|
|
98
|
+
"stylelint": {
|
|
99
|
+
"table": {
|
|
100
|
+
"ajv": "$ajv"
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
"devDependencies": {
|
|
105
|
+
"actionlint": "^2.0.6",
|
|
106
|
+
"c8": "^10.1.2",
|
|
107
|
+
"eslint": "^9.12.0",
|
|
108
|
+
"eslint-plugin-security": "^3.0.1",
|
|
109
|
+
"globals": "^15.9.0",
|
|
110
|
+
"husky": "^9.1.4",
|
|
111
|
+
"lint-staged": "^15.2.10",
|
|
112
|
+
"prettier": "^3.3.3",
|
|
113
|
+
"stylelint": "^16.8.0",
|
|
114
|
+
"stylelint-config-standard": "^37.0.0"
|
|
115
|
+
},
|
|
116
|
+
"volta": {
|
|
117
|
+
"node": "20.11.1",
|
|
118
|
+
"npm": "10.2.4"
|
|
119
|
+
},
|
|
120
|
+
"lint-staged": {
|
|
121
|
+
"CLAUDE.md": [
|
|
122
|
+
"node scripts/validate-claude-md.js",
|
|
123
|
+
"prettier --write"
|
|
124
|
+
],
|
|
125
|
+
"config/defaults.js": [
|
|
126
|
+
"node scripts/validate-command-patterns.js",
|
|
127
|
+
"eslint --fix",
|
|
128
|
+
"prettier --write"
|
|
129
|
+
],
|
|
130
|
+
"package.json": [
|
|
131
|
+
"prettier --write"
|
|
132
|
+
],
|
|
133
|
+
"!(node_modules)/**/*.{css,scss,sass,less,pcss}": [
|
|
134
|
+
"stylelint --fix",
|
|
135
|
+
"prettier --write"
|
|
136
|
+
],
|
|
137
|
+
"!(node_modules)/**/*.{json,md,yml,yaml}": [
|
|
138
|
+
"prettier --write"
|
|
139
|
+
],
|
|
140
|
+
"!(node_modules)/**/*.{js,jsx,mjs,cjs,html}": [
|
|
141
|
+
"eslint --fix",
|
|
142
|
+
"prettier --write"
|
|
143
|
+
],
|
|
144
|
+
"**/*.{js,jsx,mjs,cjs,html}": [
|
|
145
|
+
"eslint --fix",
|
|
146
|
+
"prettier --write"
|
|
147
|
+
],
|
|
148
|
+
"**/*.{json,md,yml,yaml}": [
|
|
149
|
+
"prettier --write"
|
|
150
|
+
],
|
|
151
|
+
"**/*.{css,scss,sass,less,pcss}": [
|
|
152
|
+
"stylelint --fix",
|
|
153
|
+
"prettier --write"
|
|
154
|
+
]
|
|
155
|
+
},
|
|
156
|
+
"dependencies": {
|
|
157
|
+
"@npmcli/package-json": "^7.0.1",
|
|
158
|
+
"ajv": "^8.17.1",
|
|
159
|
+
"ajv-formats": "^3.0.1",
|
|
160
|
+
"js-yaml": "^4.1.0",
|
|
161
|
+
"markdownlint-cli2": "^0.19.0",
|
|
162
|
+
"ora": "^8.1.1",
|
|
163
|
+
"tar": "^7.4.3"
|
|
164
|
+
}
|
|
165
|
+
}
|