Shipping React apps with App Engine
Real source trees, cloud Vite builds, immutable versions and contract-driven composition — how LLC treats internal apps as first-class artifacts.
Internal tools die the same death everywhere: someone forks a dashboard, the fork drifts, the person leaves, and two years later nobody dares touch the deploy. App Engine is our answer — treat every app as a versioned artifact, not a folder on someone’s laptop.
Real projects, not widget configs
An App Engine app is a real React project: src/main.jsx, JSX components, JSON-schema contracts, a manifest. The engine stores the source tree, runs the Vite build in the cloud, and produces an ESM bundle with runtime dependencies externalized — React, MUI and the SDKs are injected by the host page, so a typical app bundle stays lean.
Publish = freeze
Publishing creates an immutable version: manifest, routes, contracts and source snapshot, frozen once built. Rollback is pointing the active version back one step — not a rebuild under pressure at 6pm on a Friday. The pointer flip is atomic.
Contracts make apps composable
Every app declares an input schema and an output schema. That is what turns a UI into a building block: a workflow can launch the app in task mode, hand it a payload, and receive validated output when the human finishes. The same approval desk serves a portal (embedded), a task queue (task) and an automated process (workflow) without a line of glue code.
Where the AI fits
Because the source of truth lives in the platform, an AI assistant in App Studio edits the same tree, runs the same build, and produces the same immutable versions — under the same permissions and audit trail as any developer. That is the direction: apps whose maintenance cost stops scaling with their count.