create-gitcms 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.
Files changed (86) hide show
  1. package/README.md +49 -0
  2. package/dist/args.d.ts +14 -0
  3. package/dist/args.d.ts.map +1 -0
  4. package/dist/args.js +119 -0
  5. package/dist/args.js.map +1 -0
  6. package/dist/cli.d.ts +4 -0
  7. package/dist/cli.d.ts.map +1 -0
  8. package/dist/cli.js +529 -0
  9. package/dist/cli.js.map +1 -0
  10. package/dist/core/content-detection.d.ts +2 -0
  11. package/dist/core/content-detection.d.ts.map +1 -0
  12. package/dist/core/content-detection.js +2 -0
  13. package/dist/core/content-detection.js.map +1 -0
  14. package/dist/core/filesystem.d.ts +11 -0
  15. package/dist/core/filesystem.d.ts.map +1 -0
  16. package/dist/core/filesystem.js +93 -0
  17. package/dist/core/filesystem.js.map +1 -0
  18. package/dist/core/framework-detection.d.ts +17 -0
  19. package/dist/core/framework-detection.d.ts.map +1 -0
  20. package/dist/core/framework-detection.js +60 -0
  21. package/dist/core/framework-detection.js.map +1 -0
  22. package/dist/core/frontmatter-inference.d.ts +2 -0
  23. package/dist/core/frontmatter-inference.d.ts.map +1 -0
  24. package/dist/core/frontmatter-inference.js +2 -0
  25. package/dist/core/frontmatter-inference.js.map +1 -0
  26. package/dist/core/git.d.ts +4 -0
  27. package/dist/core/git.d.ts.map +1 -0
  28. package/dist/core/git.js +45 -0
  29. package/dist/core/git.js.map +1 -0
  30. package/dist/core/gitcms-config.d.ts +153 -0
  31. package/dist/core/gitcms-config.d.ts.map +1 -0
  32. package/dist/core/gitcms-config.js +436 -0
  33. package/dist/core/gitcms-config.js.map +1 -0
  34. package/dist/core/mode-resolution.d.ts +22 -0
  35. package/dist/core/mode-resolution.d.ts.map +1 -0
  36. package/dist/core/mode-resolution.js +136 -0
  37. package/dist/core/mode-resolution.js.map +1 -0
  38. package/dist/core/paths.d.ts +6 -0
  39. package/dist/core/paths.d.ts.map +1 -0
  40. package/dist/core/paths.js +19 -0
  41. package/dist/core/paths.js.map +1 -0
  42. package/dist/core/planner.d.ts +8 -0
  43. package/dist/core/planner.d.ts.map +1 -0
  44. package/dist/core/planner.js +295 -0
  45. package/dist/core/planner.js.map +1 -0
  46. package/dist/core/site-roots.d.ts +5 -0
  47. package/dist/core/site-roots.d.ts.map +1 -0
  48. package/dist/core/site-roots.js +32 -0
  49. package/dist/core/site-roots.js.map +1 -0
  50. package/dist/core/sitemap-discovery.d.ts +2 -0
  51. package/dist/core/sitemap-discovery.d.ts.map +1 -0
  52. package/dist/core/sitemap-discovery.js +2 -0
  53. package/dist/core/sitemap-discovery.js.map +1 -0
  54. package/dist/core/vendor/content-detection.d.ts +51 -0
  55. package/dist/core/vendor/content-detection.d.ts.map +1 -0
  56. package/dist/core/vendor/content-detection.js +462 -0
  57. package/dist/core/vendor/content-detection.js.map +1 -0
  58. package/dist/core/vendor/frontmatter-inference.d.ts +5 -0
  59. package/dist/core/vendor/frontmatter-inference.d.ts.map +1 -0
  60. package/dist/core/vendor/frontmatter-inference.js +234 -0
  61. package/dist/core/vendor/frontmatter-inference.js.map +1 -0
  62. package/dist/core/vendor/paths.d.ts +3 -0
  63. package/dist/core/vendor/paths.d.ts.map +1 -0
  64. package/dist/core/vendor/paths.js +23 -0
  65. package/dist/core/vendor/paths.js.map +1 -0
  66. package/dist/core/vendor/sitemap.d.ts +10 -0
  67. package/dist/core/vendor/sitemap.d.ts.map +1 -0
  68. package/dist/core/vendor/sitemap.js +162 -0
  69. package/dist/core/vendor/sitemap.js.map +1 -0
  70. package/dist/core/writer.d.ts +4 -0
  71. package/dist/core/writer.d.ts.map +1 -0
  72. package/dist/core/writer.js +45 -0
  73. package/dist/core/writer.js.map +1 -0
  74. package/dist/index.d.ts +5 -0
  75. package/dist/index.d.ts.map +1 -0
  76. package/dist/index.js +5 -0
  77. package/dist/index.js.map +1 -0
  78. package/dist/prompts.d.ts +12 -0
  79. package/dist/prompts.d.ts.map +1 -0
  80. package/dist/prompts.js +41 -0
  81. package/dist/prompts.js.map +1 -0
  82. package/dist/types.d.ts +74 -0
  83. package/dist/types.d.ts.map +1 -0
  84. package/dist/types.js +2 -0
  85. package/dist/types.js.map +1 -0
  86. package/package.json +54 -0
@@ -0,0 +1,74 @@
1
+ import type { Config, FrontmatterFormat, SSGFramework } from './core/gitcms-config.js';
2
+ export type InitMode = 'auto' | 'single' | 'monorepo';
3
+ export interface InitOptions {
4
+ repoPath: string;
5
+ mode: InitMode;
6
+ siteRoots: Array<string>;
7
+ websiteUrls?: Array<string>;
8
+ }
9
+ export type Confidence = 'high' | 'medium' | 'low';
10
+ export interface FrameworkDetection {
11
+ framework: NonNullable<SSGFramework> | null;
12
+ confidence: Confidence;
13
+ detectedBy: string | null;
14
+ suggestedMediaPath: string | null;
15
+ }
16
+ export interface DetectedCollection {
17
+ name: string;
18
+ gitPath: string;
19
+ fileCount: number;
20
+ dominantExtension: '.md' | '.mdx';
21
+ collectionType: 'flat' | 'grouped';
22
+ i18n?: {
23
+ enabled: true;
24
+ locales: Array<string>;
25
+ localeFolders: Array<string>;
26
+ defaultLocale: string | null;
27
+ prefixDefaultLocale: boolean;
28
+ };
29
+ }
30
+ export interface CollectionDetection {
31
+ collections: Array<DetectedCollection>;
32
+ confidence: Confidence;
33
+ }
34
+ export interface CollectionSchemaInference {
35
+ collectionGitPath: string;
36
+ sourceFile: string | null;
37
+ frontmatterFormat: FrontmatterFormat | null;
38
+ fields: Array<Record<string, unknown>>;
39
+ }
40
+ export interface SitePlan {
41
+ siteRoot: string;
42
+ configPath: string;
43
+ config: Config;
44
+ frameworkDetection: FrameworkDetection;
45
+ collectionDetection: CollectionDetection;
46
+ schemaInference: Array<CollectionSchemaInference>;
47
+ warnings: Array<string>;
48
+ }
49
+ export interface InitPlan {
50
+ repoRoot: string;
51
+ mode: Exclude<InitMode, 'auto'>;
52
+ sites: Array<SitePlan>;
53
+ warnings: Array<string>;
54
+ }
55
+ export interface SiteRootCandidates {
56
+ rootDetected: boolean;
57
+ nestedRoots: Array<string>;
58
+ }
59
+ export interface BuildPlanInput {
60
+ repoRoot: string;
61
+ mode: Exclude<InitMode, 'auto'>;
62
+ siteRoots: Array<string>;
63
+ }
64
+ export interface WriteOptions {
65
+ dryRun: boolean;
66
+ force: boolean;
67
+ }
68
+ export interface WriteResult {
69
+ configPath: string;
70
+ absolutePath: string;
71
+ written: boolean;
72
+ overwritten: boolean;
73
+ }
74
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js ADDED
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
package/package.json ADDED
@@ -0,0 +1,54 @@
1
+ {
2
+ "name": "create-gitcms",
3
+ "version": "0.1.0",
4
+ "description": "Bootstrap GitCMS configuration for single-site repos and monorepos.",
5
+ "type": "module",
6
+ "homepage": "https://gitcms.dev",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/Waishnav/gitcms-web-app.git",
10
+ "directory": "packages/create-gitcms"
11
+ },
12
+ "bugs": {
13
+ "url": "https://github.com/Waishnav/gitcms-web-app/issues"
14
+ },
15
+ "keywords": [
16
+ "gitcms",
17
+ "cms",
18
+ "markdown",
19
+ "mdx",
20
+ "static-site",
21
+ "monorepo",
22
+ "cli"
23
+ ],
24
+ "main": "./dist/index.js",
25
+ "types": "./dist/index.d.ts",
26
+ "exports": {
27
+ ".": {
28
+ "types": "./dist/index.d.ts",
29
+ "default": "./dist/index.js"
30
+ }
31
+ },
32
+ "bin": {
33
+ "create-gitcms": "dist/cli.js"
34
+ },
35
+ "files": [
36
+ "dist"
37
+ ],
38
+ "publishConfig": {
39
+ "access": "public"
40
+ },
41
+ "dependencies": {
42
+ "js-yaml": "^4.1.1",
43
+ "zod": "^4.1.13"
44
+ },
45
+ "devDependencies": {
46
+ "@types/js-yaml": "^4.0.9",
47
+ "typescript": "^5",
48
+ "@gitcms/config": "0.0.0"
49
+ },
50
+ "scripts": {
51
+ "build": "rm -rf dist tsconfig.tsbuildinfo && tsc -p tsconfig.json",
52
+ "type-check": "tsc -p tsconfig.json --noEmit"
53
+ }
54
+ }