create-seedcli 0.1.14 → 1.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/package.json +9 -9
- package/templates/full/biome.json.eta +43 -0
- package/templates/full/package.json.eta +4 -0
- package/templates/full/src/extensions/timer.ts.eta +6 -6
- package/templates/minimal/biome.json.eta +43 -0
- package/templates/minimal/package.json.eta +4 -0
- package/templates/plugin/biome.json.eta +43 -0
- package/templates/plugin/package.json.eta +4 -0
- package/templates/plugin/src/extensions/example.ts.eta +5 -5
- package/templates/plugin/src/index.ts.eta +1 -1
- package/templates/plugin/src/types.d.ts.eta +1 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-seedcli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "1.0.0",
|
|
4
4
|
"description": "Scaffold a new Seed CLI project — works with bun create, npx, and npm create",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -43,15 +43,15 @@
|
|
|
43
43
|
"templates"
|
|
44
44
|
],
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@seedcli/filesystem": "^0.
|
|
47
|
-
"@seedcli/package-manager": "^0.
|
|
48
|
-
"@seedcli/print": "^0.
|
|
49
|
-
"@seedcli/prompt": "^0.
|
|
50
|
-
"@seedcli/strings": "^0.
|
|
51
|
-
"@seedcli/system": "^0.
|
|
52
|
-
"@seedcli/template": "^0.
|
|
46
|
+
"@seedcli/filesystem": "^1.0.0",
|
|
47
|
+
"@seedcli/package-manager": "^1.0.0",
|
|
48
|
+
"@seedcli/print": "^1.0.0",
|
|
49
|
+
"@seedcli/prompt": "^1.0.0",
|
|
50
|
+
"@seedcli/strings": "^1.0.0",
|
|
51
|
+
"@seedcli/system": "^1.0.0",
|
|
52
|
+
"@seedcli/template": "^1.0.0"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
-
"@seedcli/testing": "^0.
|
|
55
|
+
"@seedcli/testing": "^1.0.0"
|
|
56
56
|
}
|
|
57
57
|
}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://biomejs.dev/schemas/2.4.4/schema.json",
|
|
3
|
+
"vcs": {
|
|
4
|
+
"enabled": true,
|
|
5
|
+
"clientKind": "git",
|
|
6
|
+
"useIgnoreFile": true
|
|
7
|
+
},
|
|
8
|
+
"assist": {
|
|
9
|
+
"actions": {
|
|
10
|
+
"source": {
|
|
11
|
+
"organizeImports": "on"
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"linter": {
|
|
16
|
+
"enabled": true,
|
|
17
|
+
"rules": {
|
|
18
|
+
"recommended": true,
|
|
19
|
+
"style": {
|
|
20
|
+
"useConst": "error"
|
|
21
|
+
},
|
|
22
|
+
"suspicious": {
|
|
23
|
+
"noExplicitAny": "warn"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"formatter": {
|
|
28
|
+
"enabled": true,
|
|
29
|
+
"indentStyle": "space",
|
|
30
|
+
"indentWidth": 2,
|
|
31
|
+
"lineWidth": 100
|
|
32
|
+
},
|
|
33
|
+
"javascript": {
|
|
34
|
+
"formatter": {
|
|
35
|
+
"quoteStyle": "double",
|
|
36
|
+
"semicolons": "asNeeded",
|
|
37
|
+
"trailingCommas": "all"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"files": {
|
|
41
|
+
"includes": ["src/**/*.ts", "tests/**/*.ts", "*.json", "*.ts"]
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -11,12 +11,16 @@
|
|
|
11
11
|
"build": "seed build",
|
|
12
12
|
"compile": "seed build --compile --outfile <%= it.name %>",
|
|
13
13
|
"test": "bun test",
|
|
14
|
+
"lint": "biome check .",
|
|
15
|
+
"lint:fix": "biome check --write .",
|
|
16
|
+
"format": "biome format --write .",
|
|
14
17
|
"typecheck": "tsc --noEmit"
|
|
15
18
|
},
|
|
16
19
|
"dependencies": {
|
|
17
20
|
"@seedcli/core": "^<%= it.seedcliVersion %>"
|
|
18
21
|
},
|
|
19
22
|
"devDependencies": {
|
|
23
|
+
"@biomejs/biome": "^2.4.4",
|
|
20
24
|
"@seedcli/cli": "^<%= it.seedcliVersion %>",
|
|
21
25
|
"@seedcli/testing": "^<%= it.seedcliVersion %>",
|
|
22
26
|
"@types/bun": "latest",
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { defineExtension } from "@seedcli/core";
|
|
2
2
|
|
|
3
3
|
/**
|
|
4
|
-
* Example extension — adds a `timer` helper to the
|
|
4
|
+
* Example extension — adds a `timer` helper to the seed context.
|
|
5
5
|
*
|
|
6
|
-
* Extensions run before any command and can attach utilities to the
|
|
6
|
+
* Extensions run before any command and can attach utilities to the seed context.
|
|
7
7
|
* This file is auto-discovered from the `extensions/` directory.
|
|
8
8
|
*
|
|
9
|
-
* To type the
|
|
9
|
+
* To type the seed context for consumers, declare the module augmentation:
|
|
10
10
|
*/
|
|
11
11
|
declare module "@seedcli/core" {
|
|
12
|
-
interface
|
|
12
|
+
interface SeedExtensions {
|
|
13
13
|
timer: {
|
|
14
14
|
start(): void;
|
|
15
15
|
stop(): string;
|
|
@@ -21,10 +21,10 @@ export default defineExtension({
|
|
|
21
21
|
name: "timer",
|
|
22
22
|
description: "Simple timing utility",
|
|
23
23
|
|
|
24
|
-
setup: (
|
|
24
|
+
setup: (seed) => {
|
|
25
25
|
let startTime = 0;
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
seed.timer = {
|
|
28
28
|
start: () => {
|
|
29
29
|
startTime = performance.now();
|
|
30
30
|
},
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://biomejs.dev/schemas/2.4.4/schema.json",
|
|
3
|
+
"vcs": {
|
|
4
|
+
"enabled": true,
|
|
5
|
+
"clientKind": "git",
|
|
6
|
+
"useIgnoreFile": true
|
|
7
|
+
},
|
|
8
|
+
"assist": {
|
|
9
|
+
"actions": {
|
|
10
|
+
"source": {
|
|
11
|
+
"organizeImports": "on"
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"linter": {
|
|
16
|
+
"enabled": true,
|
|
17
|
+
"rules": {
|
|
18
|
+
"recommended": true,
|
|
19
|
+
"style": {
|
|
20
|
+
"useConst": "error"
|
|
21
|
+
},
|
|
22
|
+
"suspicious": {
|
|
23
|
+
"noExplicitAny": "warn"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"formatter": {
|
|
28
|
+
"enabled": true,
|
|
29
|
+
"indentStyle": "space",
|
|
30
|
+
"indentWidth": 2,
|
|
31
|
+
"lineWidth": 100
|
|
32
|
+
},
|
|
33
|
+
"javascript": {
|
|
34
|
+
"formatter": {
|
|
35
|
+
"quoteStyle": "double",
|
|
36
|
+
"semicolons": "asNeeded",
|
|
37
|
+
"trailingCommas": "all"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"files": {
|
|
41
|
+
"includes": ["src/**/*.ts", "tests/**/*.ts", "*.json", "*.ts"]
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -11,12 +11,16 @@
|
|
|
11
11
|
"test": "bun test",
|
|
12
12
|
"build": "seed build",
|
|
13
13
|
"compile": "seed build --compile --outfile <%= it.name %>",
|
|
14
|
+
"lint": "biome check .",
|
|
15
|
+
"lint:fix": "biome check --write .",
|
|
16
|
+
"format": "biome format --write .",
|
|
14
17
|
"typecheck": "tsc --noEmit"
|
|
15
18
|
},
|
|
16
19
|
"dependencies": {
|
|
17
20
|
"@seedcli/core": "^<%= it.seedcliVersion %>"
|
|
18
21
|
},
|
|
19
22
|
"devDependencies": {
|
|
23
|
+
"@biomejs/biome": "^2.4.4",
|
|
20
24
|
"@seedcli/cli": "^<%= it.seedcliVersion %>",
|
|
21
25
|
"@types/bun": "latest",
|
|
22
26
|
"typescript": "^5.9.0"
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://biomejs.dev/schemas/2.4.4/schema.json",
|
|
3
|
+
"vcs": {
|
|
4
|
+
"enabled": true,
|
|
5
|
+
"clientKind": "git",
|
|
6
|
+
"useIgnoreFile": true
|
|
7
|
+
},
|
|
8
|
+
"assist": {
|
|
9
|
+
"actions": {
|
|
10
|
+
"source": {
|
|
11
|
+
"organizeImports": "on"
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"linter": {
|
|
16
|
+
"enabled": true,
|
|
17
|
+
"rules": {
|
|
18
|
+
"recommended": true,
|
|
19
|
+
"style": {
|
|
20
|
+
"useConst": "error"
|
|
21
|
+
},
|
|
22
|
+
"suspicious": {
|
|
23
|
+
"noExplicitAny": "warn"
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
},
|
|
27
|
+
"formatter": {
|
|
28
|
+
"enabled": true,
|
|
29
|
+
"indentStyle": "space",
|
|
30
|
+
"indentWidth": 2,
|
|
31
|
+
"lineWidth": 100
|
|
32
|
+
},
|
|
33
|
+
"javascript": {
|
|
34
|
+
"formatter": {
|
|
35
|
+
"quoteStyle": "double",
|
|
36
|
+
"semicolons": "asNeeded",
|
|
37
|
+
"trailingCommas": "all"
|
|
38
|
+
}
|
|
39
|
+
},
|
|
40
|
+
"files": {
|
|
41
|
+
"includes": ["src/**/*.ts", "tests/**/*.ts", "*.json", "*.ts"]
|
|
42
|
+
}
|
|
43
|
+
}
|
|
@@ -19,6 +19,9 @@
|
|
|
19
19
|
"build": "tsc --project tsconfig.build.json",
|
|
20
20
|
"prepublishOnly": "bun run build",
|
|
21
21
|
"test": "bun test",
|
|
22
|
+
"lint": "biome check .",
|
|
23
|
+
"lint:fix": "biome check --write .",
|
|
24
|
+
"format": "biome format --write .",
|
|
22
25
|
"typecheck": "tsc --noEmit"
|
|
23
26
|
},
|
|
24
27
|
"dependencies": {
|
|
@@ -28,6 +31,7 @@
|
|
|
28
31
|
"@seedcli/core": "^<%= it.seedcliVersion %>"
|
|
29
32
|
},
|
|
30
33
|
"devDependencies": {
|
|
34
|
+
"@biomejs/biome": "^2.4.4",
|
|
31
35
|
"@seedcli/testing": "^<%= it.seedcliVersion %>",
|
|
32
36
|
"@types/bun": "latest",
|
|
33
37
|
"typescript": "^5.9.0"
|
|
@@ -4,12 +4,12 @@ export const exampleExtension = defineExtension({
|
|
|
4
4
|
name: "<%= it.name %>",
|
|
5
5
|
description: "Example extension for <%= it.name %>",
|
|
6
6
|
|
|
7
|
-
setup: (
|
|
8
|
-
// Built-in
|
|
9
|
-
|
|
7
|
+
setup: (seed) => {
|
|
8
|
+
// Built-in seed modules are fully typed
|
|
9
|
+
seed.print.muted("[<%= it.name %>] extension loaded");
|
|
10
10
|
|
|
11
|
-
// Attach your extension to the
|
|
12
|
-
|
|
11
|
+
// Attach your extension to the seed context (typed via src/types.d.ts)
|
|
12
|
+
seed.<%= it.name.replace(/-/g, "_").replace(/^(\d)/, "_$1") %> = {
|
|
13
13
|
greet: (name: string) => `Hello from <%= it.name %>, ${name}!`,
|
|
14
14
|
};
|
|
15
15
|
},
|
|
@@ -2,7 +2,7 @@ import { definePlugin } from "@seedcli/core";
|
|
|
2
2
|
import helloCommand from "./commands/hello.js";
|
|
3
3
|
import { exampleExtension } from "./extensions/example.js";
|
|
4
4
|
|
|
5
|
-
// Re-export types so consumers get
|
|
5
|
+
// Re-export types so consumers get SeedExtensions augmentation
|
|
6
6
|
export type {} from "./types.js";
|
|
7
7
|
|
|
8
8
|
export default definePlugin({
|