> For the complete documentation index, see [llms.txt](https://docs.hostinger.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.hostinger.com/node.js/overview-1/angular.md).

# Angular

Opinionated TypeScript framework with batteries included. Hostinger runs Angular as static bundles by default; Angular Universal (SSR) is also supported via the `other` application type.

**`app_type`:** `angular`

## Static mode

Default Angular mode — client-side rendering, routes hydrate in the browser.

### `package.json`

```json
{
  "scripts": {
    "ng": "ng",
    "start": "ng serve",
    "build": "ng build",
    "test": "ng test"
  }
}
```

### hPanel settings

| Field            | Value                                                                |
| ---------------- | -------------------------------------------------------------------- |
| Application type | `angular`                                                            |
| Build script     | `build`                                                              |
| Output directory | `dist/<project-name>` or `dist/<project-name>/browser` (Angular 17+) |
| Entry file       | — (static)                                                           |

> **Note:** Angular 17+ splits build output into `browser/` and `server/` subdirectories. Point the output directory at `browser/`. The project name comes from `angular.json` → `projects.<name>`.

## Server mode (Angular Universal / SSR)

Angular Universal pre-renders and serves with a Node server.

### Enable SSR

```bash
ng add @angular/ssr
```

This adds `server.ts` and updates `angular.json` with a server build target.

### Build

```bash
ng build
```

### Application type

Use `other` — Hostinger's `angular` preset defaults to static output.

### hPanel settings

| Field            | Value                                   |
| ---------------- | --------------------------------------- |
| Application type | `other`                                 |
| Build script     | `build`                                 |
| Output directory | `dist/<project-name>/server`            |
| Entry file       | `dist/<project-name>/server/server.mjs` |

Angular's server adapter listens on `process.env.PORT` by default.

## Notes

* Node 20 or newer for Angular 17+.
* Build output locations change between major Angular versions; check `angular.json` → `architect.build.options.outputPath` to be sure.

***

*Last updated: July 22, 2026*
