create-specment 0.2.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 (113) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +314 -0
  3. package/bin/commands/create.d.ts +3 -0
  4. package/bin/commands/create.d.ts.map +1 -0
  5. package/bin/commands/create.js +30 -0
  6. package/bin/commands/create.js.map +1 -0
  7. package/bin/constants/languages.d.ts +15 -0
  8. package/bin/constants/languages.d.ts.map +1 -0
  9. package/bin/constants/languages.js +14 -0
  10. package/bin/constants/languages.js.map +1 -0
  11. package/bin/core/interactive-setup.d.ts +15 -0
  12. package/bin/core/interactive-setup.d.ts.map +1 -0
  13. package/bin/core/interactive-setup.js +171 -0
  14. package/bin/core/interactive-setup.js.map +1 -0
  15. package/bin/core/interactive-setup.test.d.ts +2 -0
  16. package/bin/core/interactive-setup.test.d.ts.map +1 -0
  17. package/bin/core/interactive-setup.test.js +97 -0
  18. package/bin/core/interactive-setup.test.js.map +1 -0
  19. package/bin/core/project-generator.d.ts +12 -0
  20. package/bin/core/project-generator.d.ts.map +1 -0
  21. package/bin/core/project-generator.js +83 -0
  22. package/bin/core/project-generator.js.map +1 -0
  23. package/bin/features/index.d.ts +3 -0
  24. package/bin/features/index.d.ts.map +1 -0
  25. package/bin/features/index.js +47 -0
  26. package/bin/features/index.js.map +1 -0
  27. package/bin/generators/docusaurus-config.d.ts +3 -0
  28. package/bin/generators/docusaurus-config.d.ts.map +1 -0
  29. package/bin/generators/docusaurus-config.js +285 -0
  30. package/bin/generators/docusaurus-config.js.map +1 -0
  31. package/bin/generators/package-json.d.ts +3 -0
  32. package/bin/generators/package-json.d.ts.map +1 -0
  33. package/bin/generators/package-json.js +98 -0
  34. package/bin/generators/package-json.js.map +1 -0
  35. package/bin/generators/template-files.d.ts +3 -0
  36. package/bin/generators/template-files.d.ts.map +1 -0
  37. package/bin/generators/template-files.js +370 -0
  38. package/bin/generators/template-files.js.map +1 -0
  39. package/bin/index.d.ts +5 -0
  40. package/bin/index.d.ts.map +1 -0
  41. package/bin/index.js +37 -0
  42. package/bin/index.js.map +1 -0
  43. package/bin/plugins/i18n-integration.d.ts +25 -0
  44. package/bin/plugins/i18n-integration.d.ts.map +1 -0
  45. package/bin/plugins/i18n-integration.js +309 -0
  46. package/bin/plugins/i18n-integration.js.map +1 -0
  47. package/bin/plugins/plantuml-integration.d.ts +17 -0
  48. package/bin/plugins/plantuml-integration.d.ts.map +1 -0
  49. package/bin/plugins/plantuml-integration.js +111 -0
  50. package/bin/plugins/plantuml-integration.js.map +1 -0
  51. package/bin/plugins/redoc-integration.d.ts +25 -0
  52. package/bin/plugins/redoc-integration.d.ts.map +1 -0
  53. package/bin/plugins/redoc-integration.js +372 -0
  54. package/bin/plugins/redoc-integration.js.map +1 -0
  55. package/bin/plugins/search-integration.d.ts +20 -0
  56. package/bin/plugins/search-integration.d.ts.map +1 -0
  57. package/bin/plugins/search-integration.js +165 -0
  58. package/bin/plugins/search-integration.js.map +1 -0
  59. package/bin/templates/index.d.ts +4 -0
  60. package/bin/templates/index.d.ts.map +1 -0
  61. package/bin/templates/index.js +60 -0
  62. package/bin/templates/index.js.map +1 -0
  63. package/bin/templates/template-definitions.d.ts +10 -0
  64. package/bin/templates/template-definitions.d.ts.map +1 -0
  65. package/bin/templates/template-definitions.js +296 -0
  66. package/bin/templates/template-definitions.js.map +1 -0
  67. package/bin/tests/integration.test.d.ts +2 -0
  68. package/bin/tests/integration.test.d.ts.map +1 -0
  69. package/bin/tests/integration.test.js +171 -0
  70. package/bin/tests/integration.test.js.map +1 -0
  71. package/bin/types/index.d.ts +44 -0
  72. package/bin/types/index.d.ts.map +1 -0
  73. package/bin/types/index.js +2 -0
  74. package/bin/types/index.js.map +1 -0
  75. package/bin/utils/config-merger.d.ts +32 -0
  76. package/bin/utils/config-merger.d.ts.map +1 -0
  77. package/bin/utils/config-merger.js +216 -0
  78. package/bin/utils/config-merger.js.map +1 -0
  79. package/bin/utils/errors.d.ts +9 -0
  80. package/bin/utils/errors.d.ts.map +1 -0
  81. package/bin/utils/errors.js +22 -0
  82. package/bin/utils/errors.js.map +1 -0
  83. package/bin/utils/install.d.ts +5 -0
  84. package/bin/utils/install.d.ts.map +1 -0
  85. package/bin/utils/install.js +38 -0
  86. package/bin/utils/install.js.map +1 -0
  87. package/bin/utils/message-formatter.d.ts +15 -0
  88. package/bin/utils/message-formatter.d.ts.map +1 -0
  89. package/bin/utils/message-formatter.js +85 -0
  90. package/bin/utils/message-formatter.js.map +1 -0
  91. package/bin/utils/template-processor.d.ts +54 -0
  92. package/bin/utils/template-processor.d.ts.map +1 -0
  93. package/bin/utils/template-processor.js +139 -0
  94. package/bin/utils/template-processor.js.map +1 -0
  95. package/bin/utils/template-processor.test.d.ts +2 -0
  96. package/bin/utils/template-processor.test.d.ts.map +1 -0
  97. package/bin/utils/template-processor.test.js +120 -0
  98. package/bin/utils/template-processor.test.js.map +1 -0
  99. package/bin/utils/version.d.ts +2 -0
  100. package/bin/utils/version.d.ts.map +1 -0
  101. package/bin/utils/version.js +10 -0
  102. package/bin/utils/version.js.map +1 -0
  103. package/package.json +67 -0
  104. package/templates/classic-spec/docusaurus.config.js.template +106 -0
  105. package/templates/classic-spec/package.json.template +36 -0
  106. package/templates/external-design/docusaurus.config.js.template +123 -0
  107. package/templates/external-design/package.json.template +36 -0
  108. package/templates/internal-design/docusaurus.config.js.template +123 -0
  109. package/templates/internal-design/package.json.template +36 -0
  110. package/templates/project-analysis/docusaurus.config.js.template +113 -0
  111. package/templates/project-analysis/package.json.template +36 -0
  112. package/templates/requirements/docusaurus.config.js.template +119 -0
  113. package/templates/requirements/package.json.template +36 -0
@@ -0,0 +1,36 @@
1
+ {
2
+ "name": "{{projectName}}",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "scripts": {
6
+ "docusaurus": "docusaurus",
7
+ "start": "docusaurus start",
8
+ "build": "docusaurus build",
9
+ "swizzle": "docusaurus swizzle",
10
+ "deploy": "docusaurus deploy",
11
+ "clear": "docusaurus clear",
12
+ "serve": "docusaurus serve",
13
+ "write-translations": "docusaurus write-translations",
14
+ "write-heading-ids": "docusaurus write-heading-ids"
15
+ },
16
+ "dependencies": {
17
+ "@docusaurus/core": "^3.0.0",
18
+ "@docusaurus/preset-classic": "^3.0.0",
19
+ "@mdx-js/react": "^3.0.0",
20
+ "clsx": "^2.0.0",
21
+ "prism-react-renderer": "^2.3.0",
22
+ "react": "^18.0.0",
23
+ "react-dom": "^18.0.0"
24
+ },
25
+ "devDependencies": {
26
+ "@docusaurus/module-type-aliases": "^3.0.0",
27
+ "@docusaurus/types": "^3.0.0"
28
+ },
29
+ "browserslist": {
30
+ "production": [">0.5%", "not dead", "not op_mini all"],
31
+ "development": ["last 3 chrome version", "last 3 firefox version", "last 5 safari version"]
32
+ },
33
+ "engines": {
34
+ "node": ">=20.0"
35
+ }
36
+ }
@@ -0,0 +1,113 @@
1
+ // @ts-check
2
+ // Note: type annotations allow type checking and IDEs autocompletion
3
+
4
+ /** @type {import('@docusaurus/types').Config} */
5
+ const config = {
6
+ title: '{{projectName}}',
7
+ tagline: 'Project Analysis & Overview Documentation',
8
+ favicon: 'img/favicon.ico',
9
+
10
+ // Set the production url of your site here
11
+ url: 'https://your-docusaurus-site.example.com',
12
+ // Set the /<baseUrl>/ pathname under which your site is served
13
+ baseUrl: '/',
14
+
15
+ // GitHub pages deployment config.
16
+ organizationName: 'your-org',
17
+ projectName: '{{projectName}}',
18
+
19
+ onBrokenLinks: 'throw',
20
+ onBrokenMarkdownLinks: 'warn',
21
+
22
+ // Even if you don't use internalization, you can use this field to set useful
23
+ // metadata like html lang. For example, if your site is Chinese, you may want
24
+ // to replace "en" with "zh-Hans".
25
+ i18n: {
26
+ defaultLocale: 'en',
27
+ locales: ['en'],
28
+ },
29
+
30
+ presets: [
31
+ [
32
+ 'classic',
33
+ /** @type {import('@docusaurus/preset-classic').Options} */
34
+ ({
35
+ docs: {
36
+ sidebarPath: require.resolve('./sidebars.js'),
37
+ editUrl: 'https://github.com/your-org/your-repo/tree/main/',
38
+ },
39
+ blog: false, // Disable blog for project analysis
40
+ theme: {
41
+ customCss: require.resolve('./src/css/custom.css'),
42
+ },
43
+ }),
44
+ ],
45
+ ],
46
+
47
+ themeConfig:
48
+ /** @type {import('@docusaurus/preset-classic').ThemeConfig} */
49
+ ({
50
+ // Replace with your project's social card
51
+ image: 'img/docusaurus-social-card.jpg',
52
+ navbar: {
53
+ title: '{{projectName}}',
54
+ logo: {
55
+ alt: '{{projectName}} Logo',
56
+ src: 'img/logo.svg',
57
+ },
58
+ items: [
59
+ {
60
+ type: 'docSidebar',
61
+ sidebarId: 'analysisSidebar',
62
+ position: 'left',
63
+ label: 'Project Analysis',
64
+ },
65
+ {
66
+ type: 'docSidebar',
67
+ sidebarId: 'overviewSidebar',
68
+ position: 'left',
69
+ label: 'Overview',
70
+ },
71
+ {
72
+ href: 'https://github.com/your-org/your-repo',
73
+ label: 'GitHub',
74
+ position: 'right',
75
+ },
76
+ ],
77
+ },
78
+ footer: {
79
+ style: 'dark',
80
+ links: [
81
+ {
82
+ title: 'Documentation',
83
+ items: [
84
+ {
85
+ label: 'Project Analysis',
86
+ to: '/docs/analysis/intro',
87
+ },
88
+ {
89
+ label: 'Overview',
90
+ to: '/docs/overview/intro',
91
+ },
92
+ ],
93
+ },
94
+ {
95
+ title: 'Community',
96
+ items: [
97
+ {
98
+ label: 'GitHub',
99
+ href: 'https://github.com/your-org/your-repo',
100
+ },
101
+ ],
102
+ },
103
+ ],
104
+ copyright: `Copyright © ${new Date().getFullYear()} {{projectName}}. Built with Docusaurus.`,
105
+ },
106
+ prism: {
107
+ theme: require('prism-react-renderer/themes/github'),
108
+ darkTheme: require('prism-react-renderer/themes/dracula'),
109
+ },
110
+ }),
111
+ };
112
+
113
+ module.exports = config;
@@ -0,0 +1,36 @@
1
+ {
2
+ "name": "{{projectName}}",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "scripts": {
6
+ "docusaurus": "docusaurus",
7
+ "start": "docusaurus start",
8
+ "build": "docusaurus build",
9
+ "swizzle": "docusaurus swizzle",
10
+ "deploy": "docusaurus deploy",
11
+ "clear": "docusaurus clear",
12
+ "serve": "docusaurus serve",
13
+ "write-translations": "docusaurus write-translations",
14
+ "write-heading-ids": "docusaurus write-heading-ids"
15
+ },
16
+ "dependencies": {
17
+ "@docusaurus/core": "^3.0.0",
18
+ "@docusaurus/preset-classic": "^3.0.0",
19
+ "@mdx-js/react": "^3.0.0",
20
+ "clsx": "^2.0.0",
21
+ "prism-react-renderer": "^2.3.0",
22
+ "react": "^18.0.0",
23
+ "react-dom": "^18.0.0"
24
+ },
25
+ "devDependencies": {
26
+ "@docusaurus/module-type-aliases": "^3.0.0",
27
+ "@docusaurus/types": "^3.0.0"
28
+ },
29
+ "browserslist": {
30
+ "production": [">0.5%", "not dead", "not op_mini all"],
31
+ "development": ["last 3 chrome version", "last 3 firefox version", "last 5 safari version"]
32
+ },
33
+ "engines": {
34
+ "node": ">=20.0"
35
+ }
36
+ }
@@ -0,0 +1,119 @@
1
+ // @ts-check
2
+ // Note: type annotations allow type checking and IDEs autocompletion
3
+
4
+ /** @type {import('@docusaurus/types').Config} */
5
+ const config = {
6
+ title: '{{projectName}}',
7
+ tagline: 'Requirements Specification Documentation',
8
+ favicon: 'img/favicon.ico',
9
+
10
+ // Set the production url of your site here
11
+ url: 'https://your-docusaurus-site.example.com',
12
+ // Set the /<baseUrl>/ pathname under which your site is served
13
+ baseUrl: '/',
14
+
15
+ // GitHub pages deployment config.
16
+ organizationName: 'your-org',
17
+ projectName: '{{projectName}}',
18
+
19
+ onBrokenLinks: 'throw',
20
+ onBrokenMarkdownLinks: 'warn',
21
+
22
+ // Even if you don't use internalization, you can use this field to set useful
23
+ // metadata like html lang. For example, if your site is Chinese, you may want
24
+ // to replace "en" with "zh-Hans".
25
+ i18n: {
26
+ defaultLocale: 'en',
27
+ locales: ['en'],
28
+ },
29
+
30
+ presets: [
31
+ [
32
+ 'classic',
33
+ /** @type {import('@docusaurus/preset-classic').Options} */
34
+ ({
35
+ docs: {
36
+ sidebarPath: require.resolve('./sidebars.js'),
37
+ editUrl: 'https://github.com/your-org/your-repo/tree/main/',
38
+ },
39
+ blog: false, // Disable blog for requirements
40
+ theme: {
41
+ customCss: require.resolve('./src/css/custom.css'),
42
+ },
43
+ }),
44
+ ],
45
+ ],
46
+
47
+ themeConfig:
48
+ /** @type {import('@docusaurus/preset-classic').ThemeConfig} */
49
+ ({
50
+ // Replace with your project's social card
51
+ image: 'img/docusaurus-social-card.jpg',
52
+ navbar: {
53
+ title: '{{projectName}}',
54
+ logo: {
55
+ alt: '{{projectName}} Logo',
56
+ src: 'img/logo.svg',
57
+ },
58
+ items: [
59
+ {
60
+ type: 'docSidebar',
61
+ sidebarId: 'requirementsSidebar',
62
+ position: 'left',
63
+ label: 'Requirements',
64
+ },
65
+ {
66
+ type: 'docSidebar',
67
+ sidebarId: 'functionalSidebar',
68
+ position: 'left',
69
+ label: 'Functional',
70
+ },
71
+ {
72
+ type: 'docSidebar',
73
+ sidebarId: 'nonFunctionalSidebar',
74
+ position: 'left',
75
+ label: 'Non-Functional',
76
+ },
77
+ {
78
+ href: 'https://github.com/your-org/your-repo',
79
+ label: 'GitHub',
80
+ position: 'right',
81
+ },
82
+ ],
83
+ },
84
+ footer: {
85
+ style: 'dark',
86
+ links: [
87
+ {
88
+ title: 'Requirements',
89
+ items: [
90
+ {
91
+ label: 'Functional Requirements',
92
+ to: '/docs/functional/intro',
93
+ },
94
+ {
95
+ label: 'Non-Functional Requirements',
96
+ to: '/docs/non-functional/intro',
97
+ },
98
+ ],
99
+ },
100
+ {
101
+ title: 'Community',
102
+ items: [
103
+ {
104
+ label: 'GitHub',
105
+ href: 'https://github.com/your-org/your-repo',
106
+ },
107
+ ],
108
+ },
109
+ ],
110
+ copyright: `Copyright © ${new Date().getFullYear()} {{projectName}}. Built with Docusaurus.`,
111
+ },
112
+ prism: {
113
+ theme: require('prism-react-renderer/themes/github'),
114
+ darkTheme: require('prism-react-renderer/themes/dracula'),
115
+ },
116
+ }),
117
+ };
118
+
119
+ module.exports = config;
@@ -0,0 +1,36 @@
1
+ {
2
+ "name": "{{projectName}}",
3
+ "version": "0.0.0",
4
+ "private": true,
5
+ "scripts": {
6
+ "docusaurus": "docusaurus",
7
+ "start": "docusaurus start",
8
+ "build": "docusaurus build",
9
+ "swizzle": "docusaurus swizzle",
10
+ "deploy": "docusaurus deploy",
11
+ "clear": "docusaurus clear",
12
+ "serve": "docusaurus serve",
13
+ "write-translations": "docusaurus write-translations",
14
+ "write-heading-ids": "docusaurus write-heading-ids"
15
+ },
16
+ "dependencies": {
17
+ "@docusaurus/core": "^3.0.0",
18
+ "@docusaurus/preset-classic": "^3.0.0",
19
+ "@mdx-js/react": "^3.0.0",
20
+ "clsx": "^2.0.0",
21
+ "prism-react-renderer": "^2.3.0",
22
+ "react": "^18.0.0",
23
+ "react-dom": "^18.0.0"
24
+ },
25
+ "devDependencies": {
26
+ "@docusaurus/module-type-aliases": "^3.0.0",
27
+ "@docusaurus/types": "^3.0.0"
28
+ },
29
+ "browserslist": {
30
+ "production": [">0.5%", "not dead", "not op_mini all"],
31
+ "development": ["last 3 chrome version", "last 3 firefox version", "last 5 safari version"]
32
+ },
33
+ "engines": {
34
+ "node": ">=20.0"
35
+ }
36
+ }