create-flowdular 0.2.0 → 0.2.1

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/README.md CHANGED
@@ -20,11 +20,11 @@ cd my-app
20
20
  For this new local application, initialize demo authentication and start the development server:
21
21
 
22
22
  ```sh
23
- pnpm flowdular setup quick --apply --confirm reset-local-auth
23
+ pnpm flowdular setup
24
24
  pnpm dev
25
25
  ```
26
26
 
27
- Open [localhost:4310](http://localhost:4310). `setup quick` resets local authentication; use it only for a fresh local workspace with its default database.
27
+ Open [localhost:4310](http://localhost:4310). `setup` opens an interactive wizard for a local demo, PostgreSQL settings or a configuration check. It asks before resetting the local demo database.
28
28
 
29
29
  `npm create` launches the generator. The generated application uses **pnpm workspaces**. If pnpm is unavailable during installation, the generator invokes its pinned version through `npm exec`.
30
30
 
package/dist/bin.js CHANGED
@@ -256,15 +256,7 @@ function nextSteps(input) {
256
256
  return [
257
257
  `cd ${input.directory}`,
258
258
  ...input.installed ? [] : [`${input.packageManager} install`],
259
- runScript(
260
- input.packageManager,
261
- "flowdular",
262
- "setup",
263
- "quick",
264
- "--apply",
265
- "--confirm",
266
- "reset-local-auth"
267
- ),
259
+ runScript(input.packageManager, "flowdular", "setup"),
268
260
  runScript(input.packageManager, "dev")
269
261
  ];
270
262
  }
@@ -275,7 +267,7 @@ function renderNextSteps(input) {
275
267
  "",
276
268
  ...nextSteps(input).map((step) => ` ${step}`),
277
269
  "",
278
- `Then open ${DEV_URL} and sign in as admin@example.com.`,
270
+ `Then open ${DEV_URL} and follow the setup choice. Local demo uses admin@example.com.`,
279
271
  ""
280
272
  ].join("\n");
281
273
  }
@@ -313,20 +305,23 @@ var SECRET_KEYS = [
313
305
  function generateSecrets() {
314
306
  const secrets = {};
315
307
  for (const key of SECRET_KEYS)
316
- secrets[key] = randomBytes(32).toString("base64");
308
+ secrets[key] = randomBytes(32).toString(
309
+ key === "FD_AUTH_MFA_KEY" ? "base64url" : "base64"
310
+ );
317
311
  return secrets;
318
312
  }
319
313
  function renderEnvironmentFile(secrets) {
320
314
  return [
321
315
  "# Local configuration for this Flowdular app. Never commit it.",
322
- "# Regenerate any key with: openssl rand -base64 32",
316
+ "# Regenerate service keys with: openssl rand -base64 32",
317
+ "# For FD_AUTH_MFA_KEY use: openssl rand -hex 32",
323
318
  "",
324
319
  "# Local development runs on embedded PostgreSQL, so there is no server to",
325
320
  "# install and no connection string to configure. A deployment sets",
326
321
  "# FD_DATABASE_ADAPTER=postgresql and the FD_DATABASE_* URLs instead.",
327
322
  "FD_DATABASE_ADAPTER=pglite",
328
323
  "",
329
- "# Base64 encoded 32 byte keys, generated once for this app.",
324
+ "# 32 byte keys, generated once for this app; MFA uses base64url.",
330
325
  ...SECRET_KEYS.map((key) => `${key}=${secrets[key]}`),
331
326
  ""
332
327
  ].join("\n");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-flowdular",
3
- "version": "0.2.0",
3
+ "version": "0.2.1",
4
4
  "type": "module",
5
5
  "description": "Scaffold a Flowdular application: the platform, one example module and the secrets a fresh install needs.",
6
6
  "license": "MIT",
@@ -7,7 +7,7 @@ example module, and nothing else you have to configure.
7
7
 
8
8
  ```bash
9
9
  pnpm install
10
- pnpm flowdular setup quick --apply --confirm reset-local-auth
10
+ pnpm flowdular setup
11
11
  pnpm dev
12
12
  ```
13
13
 
@@ -1,5 +1,5 @@
1
1
  {
2
- "$schema": "./node_modules/@flowdular/contracts/schemas/project.schema.json",
2
+ "$schema": "./platform/node_modules/@flowdular/sdk/packages/contracts/schemas/project.schema.json",
3
3
  "schemaVersion": 1,
4
4
  "architectureVersion": "0.2.0",
5
5
  "specs": {
@@ -10,5 +10,10 @@
10
10
  "roots": ["modules"],
11
11
  "enabled": ["system.core", "auth.core", "example.core"]
12
12
  },
13
- "locales": ["en", "pl"]
13
+ "locales": ["en", "pl"],
14
+ "agent": {
15
+ "policy": "platform/node_modules/@flowdular/sdk/.ai/policies/capabilities.yaml",
16
+ "modelRouting": "platform/node_modules/@flowdular/sdk/.ai/policies/model-routing.yaml",
17
+ "blueprints": "platform/node_modules/@flowdular/sdk/.ai/blueprints"
18
+ }
14
19
  }
@@ -16,7 +16,7 @@
16
16
  "dependencies": {
17
17
  "octane": "0.1.51",
18
18
  "segment-state": "0.2.0",
19
- "@flowdular/sdk": "0.2.0"
19
+ "@flowdular/sdk": "0.2.1"
20
20
  },
21
21
  "devDependencies": {
22
22
  "@tsrx/typescript-plugin": "0.3.120",
@@ -21,6 +21,6 @@
21
21
  "devDependencies": {
22
22
  "@tsrx/prettier-plugin": "0.3.120",
23
23
  "prettier": "3.6.2",
24
- "flowdular": "0.2.0"
24
+ "flowdular": "0.2.1"
25
25
  }
26
26
  }
@@ -14,7 +14,7 @@
14
14
  "@octanejs/vite-plugin": "0.1.51",
15
15
  "octane": "0.1.51",
16
16
  "pg": "8.23.0",
17
- "@flowdular/sdk": "0.2.0"
17
+ "@flowdular/sdk": "0.2.1"
18
18
  },
19
19
  "devDependencies": {
20
20
  "@octanejs/app-core": "0.0.47",