---
url: /custom-pages/client-side-pages.md
description: Client-side pages run in the user's browser.
---

# Custom

Client-side pages run in the user's browser. They are best suited to building interactive application frontends with HTML, CSS, and JavaScript.

## What client-side pages can use

* Browser APIs such as DOM manipulation, events, and network requests.
* MODLR custom page tags that inject values into the page.
* Reusable HTML includes for shared layouts and styling.
* `script` blocks with `runat="server"` for server-generated template context.
* Runtime-specific helpers such as `ServerClient`.

## What client-side pages cannot use

Client-side pages do not run process functions directly. If logic must run on the server, use a server-side page or a process.

Custom pages can also include `script` blocks with `runat="server"` when server-side logic is needed during template rendering.

## Custom page tags

### Variable

Retrieve the value from a model variable such as `brand.Logo`.

```html
<a target="_top" href="/home/"><img src="<!--variable:brand.Logo-->" alt="Logo"></a>
```

### Include

Include another custom HTML page. This is commonly used for shared navigation or styles.

```html
<!--include:inc.Style-->
```

### Tag

Control page content with access tags.

```html
<!--tag:admin-->
<!--include:inc.adminNavigation-->
<!--tag:else-->
<!--include:inc.publicNavigation-->
<!--tagend-->
```

### User

Fetch information about the current user.

```html
<!--user:name-->
<!--user:id-->
<!--user:email-->
<!--user:phone-->
```

### Model

Retrieve information about the current model.

```html
<!--model:id-->
<!--model:name-->
```

### Application

Retrieve information about the current application.

```html
<!--application:id-->
<!--application:name-->
<!--application:route-->
```

## Related pages

* See [Client-side Available Functions](/custom-pages/client-side-functions) for client-side runtime helpers.
* See [Server Template Blocks](/custom-pages/custom-server-blocks) for `runat="server"` block usage.
* See [ServerClient](/custom-pages/client-side-serverclient) for the `ServerClient` API.
* See [serverside (Deprecated)](/custom-pages/client-side-serverside-legacy) for the deprecated `serverside` helper.
