Architecture — How Else's prototype infrastructure works

Learn how Else integrates with your infrastructure while keeping prototypes isolated and secure.

Product Overview

Else spins up isolated cloud workspaces that run your front-end code, configured to solve limitations like CORS and SSO. Your workspace connects to your staging API (or production, if you prefer), so authentication, data, and business logic all work exactly as they would in your real app. An AI agent helps you iterate on new features.

If new backend functionality is needed, Else creates an extension backend with it's own database. The extension backend allows adding and augmenting endpoints to layer on additional functionality.

When you're done prototyping, Else creates a clean pull request with just the front-end changes. You can also optionally publish prototypes to show them to specific users in your live product using the Else SDK, without having to deploy through your own infrastructure.

Core Components

Else has a few core components that work together to enable prototyping and live previews.

Else Portal

The homepage/dashboard used for administration, product configuration, and launching workspaces and prototypes.

Workspaces

Isolated machines spun up on demand to run your front-end inside the Else Development Environment.

Else SDK (optional)

A client-side bundle loader used to render published prototypes inside your live product for targeted previews/experiments.

Else API (optional)

A control plane used to load preview/experiment bundles for the Else SDK; it is not required for running workspaces.

Product Setup

Product configuration has two steps: create a product, and configure the workspace so your app runs cleanly in Else.

Step 1
Connect your Product
  • Install the Else GitHub app on your frontend repo
  • Link your repo and select the base branch to prototype from
  • Provide the URL of your backend (typically staging API)
  • Optionally add backend documentation (OpenAPI/Swagger endpoint)
Step 2
Configure a Baseline Workspace
  • Else launches a workspace with a setup agent
  • Agent auto-detects package manager, dependencies, etc
  • Agent may make code changes (not included in PRs from Else)
  • Iterate until the front-end is fully functional inside the workspace

Else Workspaces

A workspace is a single externally reachable URL backed by a reverse proxy that routes to multiple internal services.

App Preview

Your front-end dev server

Else Dev Environment

The UI for iteration and tooling

Workspace Daemon

WebSockets + APIs for the agent

Extension Backend

Optional Deno service

Origin API Communication

Workspaces run your front-end against your existing backend (usually staging). Requests are routed through the workspace proxy so browser sessions behave normally (cookies, auth redirects) and you avoid local CORS issues.

Extension Backend

If a prototype needs new backend behavior, Else runs an extension backend alongside your frontend. It acts as a programmable middleware layer, adding or transforming endpoints while forwarding to your real API.

Publishing to your Live App

Publishing is separate from the Git/PR workflow. It exists so you can load a prototype inside your live product without deploying through your own infrastructure.

Optional: skip if you only need workspaces + PRs

Else SDK

A small client-side bundle loader that can swap your app's default SPA bundle for a published prototype bundle. Has no impact on users who aren't configured to see an Else prototype.

Bundle Selection

Your app decides when to load a prototype (e.g., user is in a target cohort) and sets the prototype bundle URL via the SDK.

Else API

When using the Else SDK, you must integrate with the Else API to determine what user sees what prototype.

Security & Data Flow

Else is designed to minimize required access and keep clear boundaries.

Code Access

Else requires access to your front-end code to build and run prototypes. Else does not require access to your backend code.

Data Access

Else does not require direct access to your database or production data. Workspaces typically run against your own staging environment.

Data Flow

For standard prototypes, your browser talks directly to your API as usual via the workspace proxy. If you enable an extension backend, some traffic may flow through that extension service.

Data Persistence

Raw request/response data is never persisted. Else may store anonymized metadata about the shape of requests/responses inside the workspace to improve agent performance.

Isolation & Credentials

Each workspace is isolated, and access is gated by scoped auth tokens/API keys. The agent the user interacts with is sandboxed with limited access. Your code is only accessed by a dedicated Else machine without public access, and by your isolated Workspaces.