You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This guide covers migrating from `@objectstack/spec` v2.x to v3.0.0 and from `@objectstack/client` v2.x to v3.0.0. These are the upstream dependencies that ObjectUI builds on — if you use ObjectUI with ObjectStack, follow these steps when upgrading.
6
+
7
+
> **Tip:** The v3.0.0 migration in ObjectUI is complete (see [CHANGELOG.md](./CHANGELOG.md)). This guide helps you migrate your own application code.
8
+
9
+
---
10
+
11
+
### Breaking Changes
12
+
13
+
| Change | v2.x | v3.0.0 |
14
+
|--------|------|--------|
15
+
|**Namespace rename**|`Hub`|`Cloud`|
16
+
|**Plugin definition**|`definePlugin()`| Removed — use `defineStack()` only |
All paginated responses now use `.records` and `.total` instead of `.value` and `.count`. The new `.hasMore` boolean simplifies infinite-scroll patterns.
67
+
68
+
```typescript
69
+
// ❌ v2.x
70
+
const result =awaitclient.data.find('accounts', query);
71
+
const items =result.value; // array of records
72
+
const count =result.count; // total count
73
+
74
+
// ✅ v3.0.0
75
+
const result =awaitclient.data.find('accounts', query);
76
+
const items =result.records; // array of records
77
+
const count =result.total; // total count
78
+
const more =result.hasMore; // boolean — are there more pages?
79
+
```
80
+
81
+
If you have custom data adapters, update all references:
Copy file name to clipboardExpand all lines: ROADMAP.md
+21-21Lines changed: 21 additions & 21 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -135,23 +135,23 @@ All 4 phases complete across 5 designers (Page, View, DataModel, Process, Report
135
135
**Goal:** A developer can go from `git clone` to a running app in under 5 minutes, with discoverable APIs, helpful errors, and complete documentation at every step.
136
136
137
137
#### P1.1 Zero-Friction Onboarding
138
-
-[] Create MIGRATION_GUIDE.md at repo root (currently referenced in README but missing)
138
+
-[x] Create MIGRATION_GUIDE.md at repo root (currently referenced in README but missing)
139
139
-[ ] Streamline `npx create-objectui-app` scaffolding with working Vite + Tailwind templates
140
140
-[ ] Ensure `pnpm install && pnpm dev` starts the console with zero additional configuration
141
-
-[] Add a standalone "Hello World" example (5-file, <50 lines total) demonstrating JSON → UI flow
141
+
-[x] Add a standalone "Hello World" example (5-file, <50 lines total) demonstrating JSON → UI flow
142
142
-[ ] Provide copy-paste-ready schema examples in the root README for instant gratification
143
143
144
144
#### P1.2 API Discoverability & JSDoc
145
-
-[] Add JSDoc comments to all 20+ exported React hooks (`useExpression`, `useActionRunner`, `useViewData`, `useDynamicApp`, `usePerformance`, `useCrudShortcuts`, etc.)
146
-
-[] Add JSDoc with usage examples to key types in `@object-ui/types` (`SchemaNode`, `FieldMetadata`, `ViewSchema`, `ActionSchema`, etc.)
145
+
-[x] Add JSDoc comments to all 20+ exported React hooks (`useExpression`, `useActionRunner`, `useViewData`, `useDynamicApp`, `usePerformance`, `useCrudShortcuts`, etc.)
146
+
-[x] Add JSDoc with usage examples to key types in `@object-ui/types` (`SchemaNode`, `FieldMetadata`, `ViewSchema`, `ActionSchema`, etc.)
147
147
-[ ] Document all context providers (`ThemeContext`, `AuthContext`, `I18nContext`, `NotificationContext`, `DndContext`) with usage examples
148
148
-[ ] Ensure TypeScript autocompletion works smoothly for all schema types via strict discriminated unions
149
149
150
150
#### P1.3 Error Messages & Debugging
151
-
-[] Create error code system (`OBJUI-001`, `OBJUI-002`, etc.) with documentation links
152
-
-[] Improve SchemaErrorBoundary to show actionable fix suggestions in dev mode (e.g., "Missing field 'type'. Did you mean to use a PageSchema?")
153
-
-[] Replace generic `console.warn()` calls in core with structured error factory
154
-
-[] Add `OBJECTUI_DEBUG=true` mode with schema resolution tracing and component render timing
151
+
-[x] Create error code system (`OBJUI-001`, `OBJUI-002`, etc.) with documentation links
152
+
-[x] Improve SchemaErrorBoundary to show actionable fix suggestions in dev mode (e.g., "Missing field 'type'. Did you mean to use a PageSchema?")
153
+
-[x] Replace generic `console.warn()` calls in core with structured error factory
154
+
-[x] Add `OBJECTUI_DEBUG=true` mode with schema resolution tracing and component render timing
155
155
-[ ] Ensure console warnings for deprecated APIs include migration code snippets
156
156
157
157
#### P1.4 CLI Tooling Polish
@@ -162,16 +162,16 @@ All 4 phases complete across 5 designers (Page, View, DataModel, Process, Report
0 commit comments