@genfeedai/create 0.1.0 → 0.1.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.
- package/dist/index.d.ts +15 -1
- package/dist/index.js +112 -17
- package/dist/index.js.map +1 -1
- package/package.json +26 -25
package/dist/index.d.ts
CHANGED
|
@@ -6,5 +6,19 @@ interface InstallCommand {
|
|
|
6
6
|
}
|
|
7
7
|
export declare function commandExists(command: string): boolean;
|
|
8
8
|
export declare function getInstallCommand(hasCommand?: (command: string) => boolean): InstallCommand;
|
|
9
|
-
export declare function
|
|
9
|
+
export declare function writeDefaultEnv(projectDirectory: string): Promise<void>;
|
|
10
|
+
/**
|
|
11
|
+
* Open a URL in the system default browser.
|
|
12
|
+
* Supports macOS, Linux (xdg-open), and Windows.
|
|
13
|
+
*/
|
|
14
|
+
export declare function openBrowser(url: string): void;
|
|
15
|
+
/**
|
|
16
|
+
* Ask the user whether to use managed MongoDB or provide their own URI,
|
|
17
|
+
* then update the project's .env file accordingly.
|
|
18
|
+
*
|
|
19
|
+
* - Managed path: downloads the mongod binary (cached after first run),
|
|
20
|
+
* sets MONGODB_URI + GENFEED_MANAGED_MONGO=true.
|
|
21
|
+
* - Custom path: prompts for a URI and sets only MONGODB_URI.
|
|
22
|
+
*/
|
|
23
|
+
export declare function setupMongoDB(projectDirectory: string): Promise<void>;
|
|
10
24
|
export {};
|
package/dist/index.js
CHANGED
|
@@ -3,15 +3,19 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
4
|
exports.commandExists = commandExists;
|
|
5
5
|
exports.getInstallCommand = getInstallCommand;
|
|
6
|
-
exports.
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const node_path_1 = require("node:path");
|
|
10
|
-
const node_child_process_1 = require("node:child_process");
|
|
6
|
+
exports.writeDefaultEnv = writeDefaultEnv;
|
|
7
|
+
exports.openBrowser = openBrowser;
|
|
8
|
+
exports.setupMongoDB = setupMongoDB;
|
|
11
9
|
const commander_1 = require("commander");
|
|
12
10
|
const consola_1 = require("consola");
|
|
13
11
|
const giget_1 = require("giget");
|
|
12
|
+
const mongodb_memory_server_1 = require("mongodb-memory-server");
|
|
13
|
+
const node_child_process_1 = require("node:child_process");
|
|
14
|
+
const promises_1 = require("node:fs/promises");
|
|
15
|
+
const node_path_1 = require("node:path");
|
|
14
16
|
const TEMPLATE_REPOSITORY = 'github:genfeedai/core#master';
|
|
17
|
+
const MANAGED_MONGO_URI = 'mongodb://127.0.0.1:27017/genfeed';
|
|
18
|
+
const ONBOARDING_URL = 'http://localhost:3000/onboarding';
|
|
15
19
|
function commandExists(command) {
|
|
16
20
|
const result = (0, node_child_process_1.spawnSync)(command, ['--version'], { stdio: 'ignore' });
|
|
17
21
|
return result.status === 0;
|
|
@@ -32,23 +36,66 @@ function getInstallCommand(hasCommand = commandExists) {
|
|
|
32
36
|
}
|
|
33
37
|
async function fileExists(filePath) {
|
|
34
38
|
try {
|
|
35
|
-
await (0, promises_1.access)(filePath
|
|
39
|
+
await (0, promises_1.access)(filePath);
|
|
36
40
|
return true;
|
|
37
41
|
}
|
|
38
42
|
catch {
|
|
39
43
|
return false;
|
|
40
44
|
}
|
|
41
45
|
}
|
|
42
|
-
|
|
43
|
-
|
|
46
|
+
const DEFAULT_ENV = `# ─── Required ───────────────────────────────────────────────────────
|
|
47
|
+
MONGODB_URI=mongodb://127.0.0.1:27017/genfeed
|
|
48
|
+
|
|
49
|
+
# ─── API Server ─────────────────────────────────────────────────────
|
|
50
|
+
PORT=3001
|
|
51
|
+
CORS_ORIGIN=http://localhost:3000
|
|
52
|
+
API_BASE_URL=http://localhost:3001
|
|
53
|
+
|
|
54
|
+
# ─── Redis (BullMQ job queue) ──────────────────────────────────────
|
|
55
|
+
REDIS_HOST=localhost
|
|
56
|
+
REDIS_PORT=6379
|
|
57
|
+
# REDIS_PASSWORD=
|
|
58
|
+
|
|
59
|
+
# ─── AI Providers (add your keys during onboarding) ────────────────
|
|
60
|
+
# REPLICATE_API_TOKEN=
|
|
61
|
+
# FAL_API_KEY=
|
|
62
|
+
# ELEVENLABS_API_KEY=
|
|
63
|
+
# HF_API_TOKEN=
|
|
64
|
+
|
|
65
|
+
# ─── Ollama (local LLM — optional) ────────────────────────────────
|
|
66
|
+
# OLLAMA_ENABLED=false
|
|
67
|
+
# OLLAMA_BASE_URL=http://localhost:11434
|
|
68
|
+
# OLLAMA_DEFAULT_MODEL=llama3.1
|
|
69
|
+
|
|
70
|
+
# ─── Frontend ──────────────────────────────────────────────────────
|
|
71
|
+
NEXT_PUBLIC_API_URL=http://localhost:3001/api
|
|
72
|
+
# NEXT_PUBLIC_URL=http://localhost:3000
|
|
73
|
+
# NEXT_PUBLIC_TTS_ENABLED=false
|
|
74
|
+
`;
|
|
75
|
+
async function writeDefaultEnv(projectDirectory) {
|
|
44
76
|
const envPath = (0, node_path_1.join)(projectDirectory, '.env');
|
|
45
|
-
const hasEnvExample = await fileExists(envExamplePath);
|
|
46
77
|
const hasEnv = await fileExists(envPath);
|
|
47
|
-
if (
|
|
78
|
+
if (hasEnv) {
|
|
48
79
|
return;
|
|
49
80
|
}
|
|
50
|
-
await (0, promises_1.
|
|
51
|
-
consola_1.consola.success('Created .env
|
|
81
|
+
await (0, promises_1.writeFile)(envPath, DEFAULT_ENV, 'utf-8');
|
|
82
|
+
consola_1.consola.success('Created .env with working defaults');
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Open a URL in the system default browser.
|
|
86
|
+
* Supports macOS, Linux (xdg-open), and Windows.
|
|
87
|
+
*/
|
|
88
|
+
function openBrowser(url) {
|
|
89
|
+
const platform = process.platform;
|
|
90
|
+
if (platform === 'darwin') {
|
|
91
|
+
(0, node_child_process_1.execFile)('open', [url]);
|
|
92
|
+
}
|
|
93
|
+
else if (platform === 'linux') {
|
|
94
|
+
(0, node_child_process_1.execFile)('xdg-open', [url]);
|
|
95
|
+
}
|
|
96
|
+
else if (platform === 'win32') {
|
|
97
|
+
(0, node_child_process_1.execFile)('cmd', ['/c', 'start', '', url]);
|
|
98
|
+
}
|
|
52
99
|
}
|
|
53
100
|
async function runInstall(projectDirectory) {
|
|
54
101
|
const installCommand = getInstallCommand();
|
|
@@ -74,6 +121,46 @@ async function runInstall(projectDirectory) {
|
|
|
74
121
|
});
|
|
75
122
|
return installCommand;
|
|
76
123
|
}
|
|
124
|
+
async function replaceEnvValue(projectDirectory, key, value) {
|
|
125
|
+
const envPath = (0, node_path_1.join)(projectDirectory, '.env');
|
|
126
|
+
const content = await (0, promises_1.readFile)(envPath, 'utf-8');
|
|
127
|
+
const pattern = new RegExp(`^${key}=.*$`, 'm');
|
|
128
|
+
if (pattern.test(content)) {
|
|
129
|
+
await (0, promises_1.writeFile)(envPath, content.replace(pattern, `${key}=${value}`), 'utf-8');
|
|
130
|
+
}
|
|
131
|
+
else {
|
|
132
|
+
await (0, promises_1.appendFile)(envPath, `\n${key}=${value}`, 'utf-8');
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Ask the user whether to use managed MongoDB or provide their own URI,
|
|
137
|
+
* then update the project's .env file accordingly.
|
|
138
|
+
*
|
|
139
|
+
* - Managed path: downloads the mongod binary (cached after first run),
|
|
140
|
+
* sets MONGODB_URI + GENFEED_MANAGED_MONGO=true.
|
|
141
|
+
* - Custom path: prompts for a URI and sets only MONGODB_URI.
|
|
142
|
+
*/
|
|
143
|
+
async function setupMongoDB(projectDirectory) {
|
|
144
|
+
const hasOwnMongo = await consola_1.consola.prompt('Do you have an existing MongoDB instance? (press Enter to use managed MongoDB)', {
|
|
145
|
+
initial: false,
|
|
146
|
+
type: 'confirm',
|
|
147
|
+
});
|
|
148
|
+
if (hasOwnMongo) {
|
|
149
|
+
const uri = await consola_1.consola.prompt('Enter your MongoDB URI:', {
|
|
150
|
+
initial: MANAGED_MONGO_URI,
|
|
151
|
+
type: 'text',
|
|
152
|
+
});
|
|
153
|
+
await replaceEnvValue(projectDirectory, 'MONGODB_URI', String(uri));
|
|
154
|
+
consola_1.consola.success('MongoDB URI saved to .env');
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
consola_1.consola.start('Downloading MongoDB binary (cached after first run)…');
|
|
158
|
+
await mongodb_memory_server_1.MongoBinary.getPath({});
|
|
159
|
+
consola_1.consola.success('MongoDB binary ready');
|
|
160
|
+
await replaceEnvValue(projectDirectory, 'MONGODB_URI', MANAGED_MONGO_URI);
|
|
161
|
+
await replaceEnvValue(projectDirectory, 'GENFEED_MANAGED_MONGO', 'true');
|
|
162
|
+
consola_1.consola.success('Managed MongoDB configured — will auto-start on `bun run dev`');
|
|
163
|
+
}
|
|
77
164
|
async function scaffoldProject(projectName) {
|
|
78
165
|
const projectDirectory = (0, node_path_1.resolve)(process.cwd(), projectName);
|
|
79
166
|
consola_1.consola.start(`Scaffolding ${projectName} from ${TEMPLATE_REPOSITORY}`);
|
|
@@ -82,22 +169,30 @@ async function scaffoldProject(projectName) {
|
|
|
82
169
|
force: false,
|
|
83
170
|
});
|
|
84
171
|
consola_1.consola.success(`Downloaded template into ${projectDirectory}`);
|
|
85
|
-
await
|
|
172
|
+
await writeDefaultEnv(projectDirectory);
|
|
86
173
|
const installCommand = await runInstall(projectDirectory);
|
|
87
174
|
consola_1.consola.success(`Dependencies installed with ${installCommand.label}`);
|
|
175
|
+
await setupMongoDB(projectDirectory);
|
|
88
176
|
consola_1.consola.box([
|
|
89
177
|
`Genfeed Core is ready in ${projectName}.`,
|
|
90
178
|
'',
|
|
91
|
-
`
|
|
92
|
-
` cd ${projectName}`,
|
|
93
|
-
` ${installCommand.command === 'bun' ? 'bun run dev' : 'npm run dev'}`,
|
|
179
|
+
`Starting dev server… visit ${ONBOARDING_URL} to get started.`,
|
|
94
180
|
].join('\n'));
|
|
181
|
+
openBrowser(ONBOARDING_URL);
|
|
182
|
+
const devCommand = installCommand.command === 'bun' ? 'bun' : 'npm';
|
|
183
|
+
const child = (0, node_child_process_1.spawn)(devCommand, ['run', 'dev'], {
|
|
184
|
+
cwd: projectDirectory,
|
|
185
|
+
stdio: 'inherit',
|
|
186
|
+
});
|
|
187
|
+
child.on('close', (code) => {
|
|
188
|
+
process.exitCode = code ?? 0;
|
|
189
|
+
});
|
|
95
190
|
}
|
|
96
191
|
async function main() {
|
|
97
192
|
const program = new commander_1.Command()
|
|
98
193
|
.name('genfeedai')
|
|
99
194
|
.description('Genfeed Core — AI workflow engine. Self-host for free.')
|
|
100
|
-
.version('0.1.
|
|
195
|
+
.version('0.1.2')
|
|
101
196
|
.argument('<project-name>', 'Directory name for the new project')
|
|
102
197
|
.action(async (projectName) => {
|
|
103
198
|
await scaffoldProject(projectName);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,17 +1,26 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
"license": "AGPL-3.0",
|
|
6
|
-
"homepage": "https://github.com/genfeedai/packages/tree/master/create",
|
|
2
|
+
"bin": {
|
|
3
|
+
"genfeedai": "dist/index.js"
|
|
4
|
+
},
|
|
7
5
|
"bugs": {
|
|
8
6
|
"url": "https://github.com/genfeedai/packages/issues"
|
|
9
7
|
},
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
"
|
|
13
|
-
"
|
|
8
|
+
"dependencies": {
|
|
9
|
+
"commander": "14.0.3",
|
|
10
|
+
"consola": "3.4.2",
|
|
11
|
+
"giget": "3.2.0",
|
|
12
|
+
"mongodb-memory-server": "11.0.1"
|
|
14
13
|
},
|
|
14
|
+
"description": "Genfeed Core — AI workflow engine. Self-host for free.",
|
|
15
|
+
"devDependencies": {
|
|
16
|
+
"@types/node": "25.5.2",
|
|
17
|
+
"typescript": "5.9.3",
|
|
18
|
+
"vitest": "4.1.2"
|
|
19
|
+
},
|
|
20
|
+
"files": [
|
|
21
|
+
"dist"
|
|
22
|
+
],
|
|
23
|
+
"homepage": "https://github.com/genfeedai/packages/tree/master/create",
|
|
15
24
|
"keywords": [
|
|
16
25
|
"genfeedai",
|
|
17
26
|
"genfeed",
|
|
@@ -19,28 +28,20 @@
|
|
|
19
28
|
"ai",
|
|
20
29
|
"scaffolder"
|
|
21
30
|
],
|
|
22
|
-
"
|
|
23
|
-
|
|
24
|
-
},
|
|
31
|
+
"license": "AGPL-3.0",
|
|
32
|
+
"name": "@genfeedai/create",
|
|
25
33
|
"publishConfig": {
|
|
26
34
|
"access": "public"
|
|
27
35
|
},
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
|
|
36
|
+
"repository": {
|
|
37
|
+
"directory": "create",
|
|
38
|
+
"type": "git",
|
|
39
|
+
"url": "git+https://github.com/genfeedai/packages.git"
|
|
40
|
+
},
|
|
31
41
|
"scripts": {
|
|
32
42
|
"build": "tsc -p tsconfig.json",
|
|
33
43
|
"check": "tsc --noEmit -p tsconfig.json",
|
|
34
44
|
"test": "vitest run"
|
|
35
45
|
},
|
|
36
|
-
"
|
|
37
|
-
"commander": "14.0.3",
|
|
38
|
-
"consola": "3.4.2",
|
|
39
|
-
"giget": "3.2.0"
|
|
40
|
-
},
|
|
41
|
-
"devDependencies": {
|
|
42
|
-
"@types/node": "25.5.0",
|
|
43
|
-
"typescript": "6.0.2",
|
|
44
|
-
"vitest": "4.1.2"
|
|
45
|
-
}
|
|
46
|
+
"version": "0.1.2"
|
|
46
47
|
}
|