当前ROADMAP分散在多个文件(ROADMAP.md,ROADMAP_CONSOLE.md,ROADMAP_SPEC.md,ROADMAP_DESIGNER.md),部分内容已完成但未及时清理,用户界面优化是当前最高优先级,且版本目标是Airtable同等用户体验。
I'll start by reading the current roadmap files in the repository to understand what exists.Let me find all roadmap files in the repository first.Now let me read the full content of each roadmap file:Now I have a comprehensive understanding of all 4 roadmap files. Let me also check for the OBJECTSTACK_CLIENT_EVALUATION.md file:Now I have a complete picture of all 4 roadmap files. Let me analyze the current state and produce the consolidated, cleaned-up roadmap.
Here's the consolidated roadmap. Want me to create a PR to update this?
# ObjectUI Development Roadmap> **Last Updated:** February 21, 2026> **Current Version:** v0.5.x> **Spec Version:**@objectstack/spec v3.0.8> **Client Version:**@objectstack/client v3.0.8> **Target UX Benchmark:** 🎯 Airtable parity> **Current Priority:** AppShell Navigation · Designer Interaction · Airtable UX Polish---## 📋 Executive Summary
ObjectUI is a universal Server-Driven UI (SDUI) engine built on React + Tailwind + Shadcn. It renders JSON metadata from the @objectstack/spec protocol into pixel-perfect, accessible, and interactive enterprise interfaces.
**Where We Are:** Foundation is **solid and shipping** — 35 packages, 91+ components, 5,070+ tests, 78 Storybook stories, 42/42 builds passing, ~85% protocol alignment. SpecBridge, Expression Engine, Action Engine, data binding, all view plugins (Grid/Kanban/Calendar/Gantt/Timeline/Map/Gallery), Record components, Report engine, Dashboard BI features, mobile UX, i18n (11 locales), WCAG AA accessibility, Designer Phase 1, and Console through Phase 19 (L3) — all ✅ complete.
**What Remains:** The gap to **Airtable-level UX** is primarily in:
1.**AppShell** — No dynamic navigation renderer from spec JSON (last P0 blocker)
2.**Designer Interaction** — ViewDesigner and DataModelDesigner need drag-and-drop, undo/redo
3.**Console L3 Polish** — Remaining L2→L3 upgrades for forms, import/export, automation, comments
4.**PWA Sync** — Background sync is simulated only
---## 🎯 P0 — Must Ship (v1.0 Blockers)### P0.1 AppShell & Navigation Renderer> **Last remaining P0 blocker.** Without this, Console cannot render a sidebar from `AppSchema` JSON.-[ ] Implement `AppSchema` renderer consuming spec JSON (name, label, icon, branding)
-[ ] Build navigation tree renderer (7 nav item types: object, dashboard, page, url, report, action, group)
-[ ] Implement `NavigationAreaSchema` support (business domain partitioning)
-[ ] Implement mobile navigation modes (drawer/bottom_nav/hamburger)
-[ ] Add permission guards (`requiredPermissions`, `visible`) on navigation items
---## 🎯 P1 — UI-First: Airtable UX Parity> **Priority #1.** All items below directly affect end-user experience. Target: indistinguishable from Airtable for core CRUD workflows.### P1.1 Designer Interaction (ViewDesigner + DataModelDesigner)> Source: ROADMAP_DESIGNER Phase 2. These two designers are the core user workflow.**ViewDesigner:**-[ ] Column drag-to-reorder via `@dnd-kit/core` (replace up/down buttons with drag handles)
-[ ] Add `Ctrl+S`/`Cmd+S` keyboard shortcut to save
-[ ] Add field type selector dropdown with icons from `DESIGNER_FIELD_TYPES`-[ ] Column width validation (min/max/pattern check)
**DataModelDesigner:**-[ ] Entity drag-to-move on canvas
-[ ] Inline editing for entity labels (click to edit)
-[ ] Field type selector dropdown (replaces hardcoded `'text'` type)
-[ ] Confirmation dialogs for destructive actions (delete entity cascades to relationships)
**Shared Infrastructure:**-[ ] Implement `useDesignerHistory` hook (command pattern with undo/redo stacks)
-[ ] Wire undo/redo to ViewDesigner and DataModelDesigner
### P1.2 Console — Forms & Data Collection (L2→L3)-[ ] Camera capture for mobile file upload
-[ ] Image cropping/rotation in file fields
-[ ] Cloud storage integration (S3, Azure Blob) for file upload
-[ ] Upload resume on network failure
-[ ] Advanced lookup: dependent lookups (filter based on other fields)
-[ ] Hierarchical lookups (parent-child relationships)
-[ ] Lookup result caching
-[ ] Form conditional logic with branching
-[ ] Multi-page forms with progress indicator
### P1.3 Console — Import/Export Excellence (L2→L3)-[ ] Excel (XLSX) export with formatting
-[ ] PDF export with custom formatting
-[ ] Export all data (not just visible rows)
-[ ] Custom column selection for export
-[ ] Scheduled exports via automation
-[ ] Export templates with custom formatting
-[ ] Import field mapping UI (map CSV columns to object fields)
-[ ] Import validation preview with error correction
-[ ] Duplicate detection during import
### P1.4 Console — Undo/Redo & History (L2→L3)-[ ] Cross-session undo stack persistence (survive page refresh)
-[ ] Undo grouping (batch multiple field changes as one undo step)
-[ ] Visual undo history panel (timeline of changes)
-[ ] Undo/redo for bulk operations
### P1.5 Console — Comments & Collaboration (L2→L3)-[ ]@mention notification delivery (email/push)
-[ ] Comment search across all records
-[ ] Comment pinning/starring
-[ ] Activity feed filtering (comments only / field changes only)
### P1.6 Console — Automation (L2→L3)-[ ] Multi-step automation builder (if-then chains)
-[ ] Scheduled automations (cron-based triggers)
-[ ] Webhook triggers and actions
-[ ] Email notification actions
-[ ] Automation execution history and logs
### P1.7 Console — Navigation Enhancements (L2→L3)-[ ] AppShell `AppSchema` renderer (spec-driven sidebar from JSON)
-[ ] Area switcher with grouped navigation
-[ ] User-customizable sidebar (drag reorder, pin favorites)
-[ ] Search within sidebar navigation
### P1.8 Console — View Config Panel (Phase 20)-[ ] Inline ViewConfigPanel for all view types (Airtable-style right sidebar)
-[ ] Column visibility toggle from config panel
-[ ] Sort/filter/group config from right sidebar
-[ ] View appearance settings (density, row color, conditional formatting)
---## 🧩 P2 — Polish & Advanced Features### P2.1 Designer — Remaining Interaction (Post-v1.0)-[ ] PageDesigner: Component drag-to-reorder and drag-to-position
-[ ] ProcessDesigner: Node drag-to-move
-[ ] ReportDesigner: Element drag-to-reposition within sections
-[ ] Edge creation UI in ProcessDesigner (click source → click target)
-[ ] Property editing for node labels/types in ProcessDesigner
-[ ] Confirmation dialogs for ProcessDesigner destructive actions
### P2.2 Designer — Advanced Features-[ ] Full property editors for all designers (PageDesigner, ProcessDesigner, ReportDesigner)
-[ ] i18n integration: all hardcoded strings through `resolveI18nLabel`-[ ] Canvas pan/zoom with minimap
-[ ] Auto-layout algorithms (force-directed for DataModel, Dagre for Process)
-[ ] Copy/paste support (`Ctrl+C`/`Ctrl+V`) across all designers
-[ ] Multi-select (`Ctrl+Click`, `Shift+Click`) and bulk operations
-[ ] Responsive collapsible panels
### P2.3 Designer — Collaboration Integration-[ ] Wire `CollaborationProvider` into each designer's state management
-[ ] Live cursor positions (PresenceCursors component)
-[ ] Operation-based undo/redo sync
-[ ] Conflict resolution UI (merge dialog)
-[ ] Version history browser with restore
### P2.4 Spec Compliance Gaps (Low Priority)-[ ]`@object-ui/core`: DataScope module — row-level permission enforcement
-[ ]`@object-ui/core`: Custom validator registration API
-[ ]`@object-ui/core`: STDEV, VARIANCE, PERCENTILE, MEDIAN formula functions
-[ ]`@object-ui/react`: useTheme hook for component-level theme access
-[ ]`@object-ui/react`: Re-export usePermissions for unified hook API
-[ ]`@object-ui/components`: ErrorBoundary wrapper per component
-[ ]`@object-ui/fields`: Inline validation message rendering
-[ ]`@object-ui/plugin-charts`: Drill-down click handler for chart segments
-[ ]`@object-ui/plugin-workflow`: React Flow integration for production canvas
-[ ]`@object-ui/plugin-ai`: Configurable AI endpoint adapter (OpenAI, Anthropic)
-[ ] Navigation `width` property: apply to drawer/modal overlays across all plugins
-[ ] Navigation `view` property: specify target form/view on record click across all plugins
### P2.5 PWA & Offline (Real Sync)-[ ] Background sync queue → real server sync (replace simulation)
-[ ] Conflict resolution on reconnection wired into Console flow
-[ ] Optimistic updates with TransactionManager state application
---## 🔮 P3 — Future Vision (Deferred)### Ecosystem & Marketplace- Plugin marketplace website with search, ratings, and install count
- Plugin publishing CLI (`os ui publish`) with automated validation
- 25+ official plugins
### Community Growth- Official website (www.objectui.org) with interactive playground
- Discord community, monthly webinars, technical blog, YouTube tutorials
### ObjectUI Cloud (2027)- Project hosting, online editor, Database as a Service
- One-click deployment, performance monitoring
- Billing system (Free / Pro / Enterprise)
### Industry Solutions (2027)- CRM, ERP, HRM, E-commerce, Project Management accelerators
- AI-powered schema generation from natural language
---## 📈 Success Metrics### v1.0 Release Criteria| Metric | Current | v1.0 Target | How Measured ||--------|---------|-------------|--------------||**Protocol Alignment**|~85% | 90%+ (UI-facing) | Protocol Consistency Assessment ||**AppShell Renderer**| ❌ Not started | Sidebar + nav tree from `AppSchema` JSON | Console renders from spec JSON ||**Designer Interaction**| Phase 1 only | ViewDesigner + DataModelDesigner drag/undo | Manual UX testing ||**Build Status**| 42/42 pass | 42/42 pass |`pnpm build`||**Test Count**| 5,070+ | 5,500+ |`pnpm test` summary ||**Test Coverage**| 90%+ | 90%+ |`pnpm test:coverage`||**Storybook Stories**| 78 | 91+ (1 per component) | Story file count ||**Console i18n**| 100% | 100% | No hardcoded strings |---## ⚠️ Risk Management| Risk | Mitigation ||------|------------|| AppShell complexity (7 nav types, areas, mobile) | Start with static nav tree, add mobile modes incrementally || Designer DnD integration time | Use `@dnd-kit/core` (already proven in Kanban/Dashboard); ViewDesigner first || Airtable UX bar is high | Focus on Grid + Kanban + Form triad first; defer Gallery/Timeline polish || PWA real sync complexity | Keep simulated sync as fallback; real sync behind feature flag || Performance regression | Performance budgets in CI, 10K-record benchmarks |---## 📚 Reference-[CONTRIBUTING.md](./CONTRIBUTING.md) — Contribution guidelines
-[QUICK_REFERENCE.md](./QUICK_REFERENCE.md) — Developer quick reference
-[Plugin Development Guide](./content/docs/guide/plugin-development.mdx)---**Roadmap Status:** 🎯 Active — AppShell · Designer Interaction · Airtable UX Parity
**Next Review:** March 15, 2026
**Contact:**hello@objectui.org | https://github.com/objectstack-ai/objectui
背景
当前ROADMAP分散在多个文件(ROADMAP.md,ROADMAP_CONSOLE.md,ROADMAP_SPEC.md,ROADMAP_DESIGNER.md),部分内容已完成但未及时清理,用户界面优化是当前最高优先级,且版本目标是Airtable同等用户体验。
任务要求
参考内容(可摘取于原roadmap)
验收标准
I'll start by reading the current roadmap files in the repository to understand what exists.Let me find all roadmap files in the repository first.Now let me read the full content of each roadmap file:Now I have a comprehensive understanding of all 4 roadmap files. Let me also check for the OBJECTSTACK_CLIENT_EVALUATION.md file:Now I have a complete picture of all 4 roadmap files. Let me analyze the current state and produce the consolidated, cleaned-up roadmap.
Here's my analysis of the 4 roadmap files:
Files found:
Status Summary:
My recommendation for the consolidated roadmap:
Based on your instructions:
ROADMAP.mdROADMAP_SPEC.md,ROADMAP_CONSOLE.md,ROADMAP_DESIGNER.md(content absorbed)Here's the consolidated roadmap. Want me to create a PR to update this?
Summary of Changes
ROADMAP.mdROADMAP_SPEC.mdROADMAP_CONSOLE.mdROADMAP_DESIGNER.mdOBJECTSTACK_CLIENT_EVALUATION.mdKey Decisions