Develops React-based tablet WebView applications with touch-optimized UI, native bridge communication, workflow routing systems, and responsive tablet layouts. Enforces reuse of existing components/utils/hooks before creating new ones. Use this skill whenever the user works on tablet webview features, e-app tablet UI, webview bridge communication, workflow routing, or any tablet-specific React development with native integration.
Use when building tablet webview features, e-app UI components, native bridge communication, or workflow routing in the React-based tablet application.
Determine what you're building:
New UI component? → Search src/components/ first → Extend or adapt existing → Create new only if nothing similar exists
Business logic? → Check src/functions/ and src/services/ first
Navigation/routing? → Use workflow routing system (config-driven, see below)
Native bridge call? → Follow src/communication.ts patterns
Performance fix? → Profile first → optimize renders/bridge calls
Before writing any code:
src/components/ — Button, Modal, Forms, Table, DatePicker, Icons, Textsrc/utils/ — helpers, logger, environment, validationsrc/hooks/ — custom hooks and workflow routing hookssrc/services/ — API services and data layerssrc/functions/ — business logicsrc/providers/ — context providers and state managementsrc/workflow/ — workflow routing and navigationUse semantic_search, file_search, or grep_search to verify before creating anything.
These are non-negotiable rules specific to this project:
Follow existing src/communication.ts patterns strictly (low freedom — fragile API):
// Type-safe native bridge interface
interface NativeBridge {
sendMessage(type: string, payload: Record<string, unknown>): void;
onMessage(handler: (message: BridgeMessage) => void): void;
}
Rules:
WorkflowProvider and dynamic component loadinglogger function (not console.log). Check shouldEnableConsoleLog() for debug.any (especially in bridge messages)After implementing changes: