@nanobpm/nano-ide-app-urban 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/README.md ADDED
@@ -0,0 +1,37 @@
1
+ # `@nanobpm/nano-ide-app-urban`
2
+
3
+ The **Urban app** pack for the Nano RAD IDE (Nano Studio).
4
+
5
+ Installing this pack teaches Studio to scaffold and run full-stack **Urban**
6
+ apps — a `nano.app.json` manifest plus processes, forms, a database and
7
+ workers — using the out-of-process [`@nanobpm/urban`](https://www.npmjs.com/package/@nanobpm/urban)
8
+ toolkit (the `urban` CLI and the `create-urban-app` scaffolder), which run on
9
+ both Node and Deno (ADR 0052).
10
+
11
+ ## What it contributes
12
+
13
+ Two **New Project** templates:
14
+
15
+ - **Urban app (model-first)** — the process is an authored `processes/*.bpmn`
16
+ (opens in the modeller) with forms, run by `urban run`.
17
+ - **Urban app (code-first)** — the process is authored in TypeScript with
18
+ `defineFlow`; `@nanobpm/urban` derives the executable model.
19
+
20
+ ## Why it declares `installDeps`
21
+
22
+ Unlike a template pack that bundles static files, this pack *fronts npm CLIs*:
23
+ its `urban` and `create-urban-app` binaries live in its dependencies. An
24
+ `npm pack` tarball ships `package.json` but **not** `node_modules`, so the pack
25
+ sets `"installDeps": true` in its `nano-ide.ext.json`. Studio's marketplace
26
+ installer honours that flag by running a guarded `npm install` inside the pack
27
+ after fetching it, materialising `node_modules/.bin/{urban,create-urban-app}`.
28
+ The host resolves the `urban` CLI from exactly that path (the pack-first
29
+ resolver), so the toolkit is present *before* a project is created
30
+ ("install-before-create").
31
+
32
+ The install is guarded: `--omit=dev` (no dev dependencies) and
33
+ `--ignore-scripts` until you trust the pack.
34
+
35
+ ## License
36
+
37
+ Apache-2.0
@@ -0,0 +1,20 @@
1
+ {
2
+ "id": "urban",
3
+ "kind": "app",
4
+ "displayName": "Urban app",
5
+ "fileTypes": [],
6
+ "installDeps": true,
7
+ "templates": [
8
+ {
9
+ "id": "urban-model-first",
10
+ "label": "Urban app (model-first)",
11
+ "description": "Authored BPMN + forms, run by `urban run` (@nanobpm/urban)"
12
+ },
13
+ {
14
+ "id": "urban-code-first",
15
+ "label": "Urban app (code-first)",
16
+ "description": "defineFlow in TypeScript, executable model derived (@nanobpm/urban)"
17
+ }
18
+ ],
19
+ "toolchain": {}
20
+ }
package/package.json ADDED
@@ -0,0 +1,18 @@
1
+ {
2
+ "name": "@nanobpm/nano-ide-app-urban",
3
+ "version": "1.0.0",
4
+ "description": "Urban app pack for the Nano RAD IDE: scaffolds and runs full-stack Urban apps (nano.app.json + processes/forms/db/workers, model-first or code-first) via the @nanobpm/urban toolkit (urban / create-urban-app), out-of-process on Node or Deno (ADR 0052).",
5
+ "license": "Apache-2.0",
6
+ "keywords": ["nano-ide-ext", "nano-ide-app", "nanobpm", "urban"],
7
+ "publishConfig": { "access": "public" },
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/jwulf/nano-ide.git",
11
+ "directory": "packages/app-urban"
12
+ },
13
+ "dependencies": {
14
+ "@nanobpm/urban": "^0.18.0",
15
+ "create-urban-app": "^0.6.0"
16
+ },
17
+ "files": ["nano-ide.ext.json", "README.md"]
18
+ }