Files
angular__angular/adev
Kam 8037e4ac08 docs(docs-infra): correct stale paths and routes in the tutorials README
The tutorials README documents how tutorial content, routes and the shared
common project are laid out, and several of those statements no longer match
the pipeline.

Links: eight links were written as `/src/content/...`. GitHub rewrites a
root-relative markdown link to `/<owner>/<repo>/blob/<branch>/<path>`, so they
resolved to `angular/angular/blob/main/src/content/...` and returned 404. They
now use the repo-root path, matching the convention already used in
`adev/src/app/editor/README.md`.

Routes: the step examples claimed the number prefix is dropped, giving
`/tutorials/learn-angular/components-in-angular`. `routes.mts` emits the step
directory name verbatim and uses the number only for ordering, and the
production sitemap lists only the numbered form, so the two examples and the
bullet describing the step URL are corrected.

Common project: `adev/src/content/tutorials/common` was removed in #53511 and
the shared project now lives in `adev/shared-docs/pipeline/tutorials/common`.
The section also documents the per-tutorial `common` directory that
`tutorial_index.mts` applies on top of the shared one, and drops the reference
to `app.module.ts`, which the standalone common project does not have.

Update dependencies: the script covered five of the eight projects that carry
a package-lock.json. `signals/common`, `signal-forms/common` and the shared
common are added; all eight are already updated together by lock file
maintenance.

The README is excluded from `generate_guides`, so no rendered page changes.
Building `//adev/src/content/tutorials/...` with and without this change
produces byte-identical output across all 213 generated files.
2026-09-09 16:22:32 +02:00
..
2026-06-03 17:54:49 +02:00

Angular.dev

This site is built with Angular.

The content is written primarily in Markdown format located in src/content. For simple edits, you can directly edit the file on GitHub and generate a Pull Request.

Local Development

For local development, pnpm is the preferred package manager. You can set up a local environment with the following commands :

# Clone Angular repo
git clone https://github.com/angular/angular.git

# Navigate to project directory
cd angular

# Install dependencies
pnpm install

# Build and run local dev server
# NOTE: Initial build will take some time
pnpm adev

If you are having issues with the docs building, see the FAQs section.

Contributing

Want to report a bug, contribute some code, or improve the documentation? Excellent!

Read through our contributing guidelines to learn about our submission process, coding rules, and more.

And if you're new, check out one of our issues labeled as help wanted or good first issue.

Code of Conduct

Help us keep Angular open and inclusive. Please read and follow our Code of Conduct.

FAQs

The build is failing and I'm seeing bazel:bazel failed: missing input file messages.

This is most likely due to a bazel dependency / caching issue. To resolve this, run the following command:

# Try this first
pnpm bazel clean

# If that doesn't work, try it with the expunge flag
pnpm bazel clean --expunge

High level architecture

The angular.dev website is a modern Angular application that utilizes Static Site Generation (SSG) to deliver pre-rendered, high-performance content to users.

The architecture is designed for efficiency and maintainability:

Content Sources: The documentation is sourced from two main places within the monorepo. The guides and tutorials are written in Markdown files, while the API reference pages are automatically generated by extracting documentation directly from the TypeScript source code of the Angular framework packages.

Build Process: During the build process, the Markdown files are converted into HTML. Simultaneously, the API documentation is extracted from the code comments. This content is then integrated into the Angular application.