← Ко всем open source проектам

Angular

angular/angular

Angular — TypeScript-фреймворк Google для веб-приложений с компонентами, шаблонами, dependency injection, роутером и большим набором встроенных возможностей.

Форки 27,174
Автор angular
Язык TypeScript
Лицензия MIT
Обновлено 2026-06-09

Что это такое

Angular — фреймворк Google для веб-приложений. В отличие от библиотек, которые дают только компонентную модель, Angular предлагает целый каркас: компоненты, шаблоны, сервисы, dependency injection, роутер, формы, HTTP, сборку, тестирование и документацию по архитектурным решениям.

История Angular важна из-за перехода от AngularJS к современному Angular. Новый Angular был построен вокруг TypeScript, компонентов и более строгой архитектуры. Поэтому он часто выбирается там, где команде нужен не только интерфейс, но и единый способ организовать большое приложение.

Что внутри и как используют

Внутри репозитория — ядро фреймворка, компилятор, packages, инструменты, тесты и документация. Angular развивается как платформа: изменения затрагивают не только синтаксис компонентов, но и сборку, серверный рендеринг, гидрацию, реактивность и инструменты разработки.

Минимальный компонент

Пример показывает базовую единицу Angular: компонент связывает TypeScript-класс и HTML-шаблон.

Язык: TypeScript
import { Component } from '@angular/core'

@Component({
  selector: 'app-counter',
  template: `
    <button (click)="count = count + 1">
      Count: {{ count }}
    </button>
  `,
})
export class CounterComponent {
  count = 0
}

Типовой сценарий — корпоративные панели, сложные формы, админки, внутренние системы и продукты, где важны единые правила. Angular дает много встроенных решений, поэтому команде меньше приходится собирать стек из разрозненных пакетов.

Сильные стороны и ограничения

Сильная сторона Angular — цельность и предсказуемость. Команда получает не только компоненты, но и способ думать о модулях, сервисах, маршрутах, формах и тестировании.

Ограничение — вес входа: нужно принять соглашения фреймворка, TypeScript, шаблоны, DI и структуру проекта. Для маленького виджета это может быть слишком много, а для большого приложения — наоборот удобно.