@bleedingdev/modern-js-main-doc 3.8.1-ultramodern.2 → 3.8.1-ultramodern.4
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.
|
@@ -13,12 +13,8 @@ Modern.js supports two BFF runtime frameworks:
|
|
|
13
13
|
`effect` and `hono` are strict runtime modes. There is no automatic fallback between them.
|
|
14
14
|
|
|
15
15
|
::::info
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
`bff.effect.strictEffectApproach: true`. Add or change generated UltraModern
|
|
19
|
-
HTTP API work through `shared/api.ts` and `api/index.ts`; do not add
|
|
20
|
-
Hono/file-convention handlers, raw request parsing, or manual `Response`
|
|
21
|
-
construction inside those workspaces.
|
|
16
|
+
Generated UltraModern workspaces use strict Effect APIs: author HTTP APIs in
|
|
17
|
+
`shared/api.ts` and `api/index.ts`, not Hono/file-convention handlers.
|
|
22
18
|
::::
|
|
23
19
|
|
|
24
20
|
## Switch to Effect runtime
|
|
@@ -126,6 +122,10 @@ const response = await api.client.hello.ping({});
|
|
|
126
122
|
|
|
127
123
|
The `api.client.*` surface is materialized by the BFF loader for `@api/index` imports. Do not import `api/index` directly and expect `client` to run in server code, scripts, or tests; direct entry imports expose the server runtime definition, and `client` is only a typed placeholder there.
|
|
128
124
|
|
|
125
|
+
For UltraModern, Effect `HttpApi` plus Effect BFF is the single blessed authored HTTP path. Use `HttpApi` endpoints with `query`, `params`, `payload`, `success`, and declared errors such as `HttpApiSchema.status(...)`; implement them with `HttpApiBuilder.group(...).handle(...)` and `HttpApiBuilder.layer(...).pipe(Layer.provide(...))`, then default-export the entry as `defineEffectBff({ api, layer })`. See `packages/cli/plugin-bff/tests/effect-httpapi-schema-validation.test.ts` for the real shapes.
|
|
126
|
+
|
|
127
|
+
Hono and `api/lambda/**` are internal compatibility only and feature-frozen.
|
|
128
|
+
|
|
129
129
|
import Hono from '@site-docs-en/components/hono';
|
|
130
130
|
|
|
131
131
|
<Hono />
|
package/package.json
CHANGED
|
@@ -19,12 +19,12 @@
|
|
|
19
19
|
"modern.js",
|
|
20
20
|
"ultramodern.js"
|
|
21
21
|
],
|
|
22
|
-
"version": "3.8.1-ultramodern.
|
|
22
|
+
"version": "3.8.1-ultramodern.4",
|
|
23
23
|
"publishConfig": {
|
|
24
24
|
"access": "public"
|
|
25
25
|
},
|
|
26
26
|
"dependencies": {
|
|
27
|
-
"@modern-js/sandpack-react": "npm:@bleedingdev/modern-js-sandpack-react@3.8.1-ultramodern.
|
|
27
|
+
"@modern-js/sandpack-react": "npm:@bleedingdev/modern-js-sandpack-react@3.8.1-ultramodern.4",
|
|
28
28
|
"mermaid": "^11.16.0"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|