From 2cda613698814b5f1cae0f195d38f17910039f2e Mon Sep 17 00:00:00 2001 From: os-zhuang Date: Fri, 3 Jul 2026 11:40:32 +0800 Subject: [PATCH] =?UTF-8?q?feat(studio):=20App=20Builder=20nav=20entry=20?= =?UTF-8?q?=E2=80=94=20pillar=20builder=20joins=20the=20login=20journey?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add an App Builder entry (componentRef studio:builder, first in Overview) to the Studio app navigation. The console binds studio:builder to the builder landing page (objectui#2175), making the pillar application builder reachable from login (Home → Studio → App Builder → pick/create a writable base → /studio/:pkg/data) instead of being a URL-only surface. Co-Authored-By: Claude Opus 4.8 --- .changeset/studio-app-builder-nav.md | 11 +++++++++++ packages/platform-objects/src/apps/studio.app.ts | 13 +++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 .changeset/studio-app-builder-nav.md diff --git a/.changeset/studio-app-builder-nav.md b/.changeset/studio-app-builder-nav.md new file mode 100644 index 0000000000..2f63e6a78f --- /dev/null +++ b/.changeset/studio-app-builder-nav.md @@ -0,0 +1,11 @@ +--- +"@objectstack/platform-objects": patch +--- + +feat(studio): "App Builder" navigation entry — the pillar builder joins the journey + +The Studio app's Overview group gains an **App Builder** entry (componentRef +`studio:builder`, bound by the console to the builder landing page). This makes the +pillar application builder reachable from the moment a user logs in — Home → Studio +→ App Builder → pick/create a writable base package → the full-screen builder at +`/studio/:packageId/:tab` — instead of being a URL-only surface. diff --git a/packages/platform-objects/src/apps/studio.app.ts b/packages/platform-objects/src/apps/studio.app.ts index 94b8d3cba1..c818a22c8e 100644 --- a/packages/platform-objects/src/apps/studio.app.ts +++ b/packages/platform-objects/src/apps/studio.app.ts @@ -84,6 +84,19 @@ export const STUDIO_APP: App = { label: 'Overview', icon: 'layout-dashboard', children: [ + { + // The application builder's front door (ADR-0080/0084): pick or + // create a writable base package, then design in the full-screen + // pillar builder (/studio/:packageId/:tab). The console binds + // `studio:builder` to the BuilderLanding page — this makes the + // builder reachable from login (Home → Studio → App Builder) + // instead of being a URL-only surface. + id: 'nav_app_builder', + type: 'component', + label: 'App Builder', + componentRef: 'studio:builder', + icon: 'hammer', + }, { id: 'nav_metadata_directory', type: 'component',