# Product architecture · One by Lughlabs

> One shared product across web, desktop, and mobile, with a persistent execution layer.

URL: https://onedev.jobrella.ai/docs/architecture/

Start here

## Product architecture

One shared product across web, desktop, and mobile, with a persistent execution layer.

### [Clients and services](https://onedev.jobrella.ai/docs/architecture/#surfaces)

The web app is the main browser interface. Electron hosts that web UI on desktop; Expo provides the mobile client. All connect to the same authenticated API.

The application consists of a long-running API, a background worker, PostgreSQL, and an optional computer provider. The Astro marketing site is a separate static application and does not need customer account access.

### [How work is carried out](https://onedev.jobrella.ai/docs/architecture/#execution)

The standard execution path uses the Pi agent runtime, Docker bot computers, and Graphile-backed jobs. Durable jobs and stored workspace state allow supported tasks to resume across worker interruptions.

Bots can use a browser, terminal, and files when a computer is configured. The Architect is a specialized space governor; it does not have its own computer and has a deliberately narrower tool profile.

### [Optional provider boundaries](https://onedev.jobrella.ai/docs/architecture/#providers)

Models, computers, memory services, calling, and integrations are configured behind shared provider interfaces. Optional adapters translate between those interfaces and external services.

A private compute deployment does not automatically make every provider private. Requests to hosted models, carriers, speech providers, or connected tools can leave the deployment.

[Data boundaries ↗](https://onedev.jobrella.ai/trust)

[Next guide **Bots & workspaces ↗**](https://onedev.jobrella.ai/docs/bots-workspaces)

Adapted for One from the project’s current implementation and self-hosting documentation. One builds on Rakazo; the license and attribution notices are on the [Licenses](https://onedev.jobrella.ai/licenses) page. [Upstream reference ↗](https://github.com/elie222/rakazo/blob/main/docs/self-host.md)

On this page [Clients and services](https://onedev.jobrella.ai/docs/architecture/#surfaces) [How work is carried out](https://onedev.jobrella.ai/docs/architecture/#execution) [Optional provider boundaries](https://onedev.jobrella.ai/docs/architecture/#providers)
