# Is angular ESM-only? Can you require() it?

> angular@1.8.3 declares a CommonJS entry, but require() fails at runtime. CommonJS on paper — require() failed in our runtime test.

HTML enhanced for web apps

Last verified Sep 9, 2026 against angular@1.8.3.

angular declares a CommonJS entry only, but require("angular") failed on every Node.js version in our probe: ReferenceError: window is not defined. import "angular" resolves to the same file, so it fails the same way. That usually means a missing peer dependency, a browser-only global, or a package that is not meant to be loaded directly; see the runtime table below.

**Deprecated:** For the actively supported Angular, see https://www.npmjs.com/package/@angular/core. AngularJS support has officially ended. For extended AngularJS support options, see https://goo.gle/angularjs-path-forward.

## What to do

1. require("angular") failed in our probe on every Node.js version (ReferenceError: window is not defined); check the package README for peer dependencies or setup before relying on it.
2. From ES modules use the default import: import angular from "angular"; then destructure. Named imports only work when Node.js can statically detect the exports.
3. TypeScript: npm install -D @types/angular
4. This package is deprecated: For the actively supported Angular, see https://www.npmjs.com/package/@angular/core. AngularJS support has officially ended. For extended AngularJS support options, see https://goo.gle/angularjs-path-forward.

## Facts

- Latest: 1.8.3 (Apr 7, 2022)
- Module format: CommonJS
- Last CommonJS version: 1.8.3
- TypeScript types: @types/angular
- Node engines: not declared
- Weekly downloads: 522K
- License: MIT

## Runtime test results for angular@1.8.3

Installed and executed on Sep 9, 2026 with require("angular") from a CommonJS file and import "angular" from an ES module.

| Runtime | require("angular") | import "angular" |
|---|---|---|
| Node.js 18 | fails (ReferenceError) | fails (ReferenceError) |
| Node.js 20 | fails (ReferenceError) | fails (ReferenceError) |
| Node.js 22 | fails (ReferenceError) | fails (ReferenceError) |
| Node.js 24 | fails (ReferenceError) | fails (ReferenceError) |
| Node.js 26 | fails (ReferenceError) | fails (ReferenceError) |
| Bun 1.4.0 | fails (ReferenceError) | fails (ReferenceError) |

## How to import angular

ES modules:

```js
import angular from "angular";
```

CommonJS:

```js
// require("angular") failed in our probe on every Node.js version we test (ReferenceError: window is not defined); see the runtime table.
const angular = require("angular");
```

## Module format by version

Derived from the type, main and exports fields of every stable release on npm (121 versions; the newest 60 shown).

| Versions | Format | First published |
|---|---|---|
| 1.3.12 – 1.8.3 | CommonJS | Feb 3, 2015 |

## Frequently asked

**Is angular ESM-only?**

angular@1.8.3 declares a CommonJS entry, but require() fails at runtime. angular declares a CommonJS entry only, but require("angular") failed on every Node.js version in our probe: ReferenceError: window is not defined. import "angular" resolves to the same file, so it fails the same way. That usually means a missing peer dependency, a browser-only global, or a package that is not meant to be loaded directly; see the runtime table below.

**Can I require angular?**

Not in practice. angular declares a CommonJS entry, but require("angular") failed on every Node.js version in our probe: ReferenceError: window is not defined. Check the package README for peer dependencies or setup before relying on it.

**Can I import angular with ES module syntax?**

Yes. import angular from "angular" works in Node.js and Bun because they support importing CommonJS modules. Named imports work only when Node.js can statically detect the exports.

**Does angular work in Bun?**

Importing angular failed in Bun 1.4.0 on Sep 9, 2026: ReferenceError: window is not defined

**Does angular ship TypeScript types?**

Not bundled. Install the community types with "npm install -D @types/angular".

## Links

- [angular on npm](https://www.npmjs.com/package/angular)
- [Source repository](https://github.com/angular/angular.js)
- [HTML version](https://canirequire.com/package/angular/)
- [JSON version](https://canirequire.com/package/angular.json)

---

For scripts and AI agents: any package is at https://canirequire.com/package/<name>/index.md (Markdown) or https://canirequire.com/package/<name>.json (JSON); the site index is https://canirequire.com/llms.txt. Fetch the URL directly; no search needed.
