Mert Özen Further With Every Line

Blog

Mert Özen's blog posts on software development, backend, frontend, and DevOps.

Series
31 posts found #angular
Angular 22: OnPush by Default, Stable Signal Forms and a File-by-File Comparison with Angular 12
Frontend PART 31

Angular 22: OnPush by Default, Stable Signal Forms and a File-by-File Comparison with Angular 12

In Angular 22 OnPush is the default, Signal Forms and the resource APIs are stable, and HttpClient uses Fetch. We also cover the yearly major cadence and a file-by-file diff with an Angular 12 project.

31 Oct 2026 7 min 59
Angular 21: Zoneless by Default, Experimental Signal Forms and Vitest
Frontend PART 30

Angular 21: Zoneless by Default, Experimental Signal Forms and Vitest

In Angular 21 new projects start without Zone.js, Signal Forms arrive as an experiment and become [formField] in 21.1, and Vitest becomes the default test runner. We compare it all with Angular 12.

31 Oct 2026 7 min 89
Angular 20: Stable Signal APIs, httpResource and the New File Naming
Frontend PART 29

Angular 20: Stable Signal APIs, httpResource and the New File Naming

In Angular 20, effect, toSignal and linkedSignal become stable, resource swaps request for params, httpResource arrives, app.ts replaces app.component.ts and *ngIf gets deprecated.

31 Oct 2026 7 min 58
Angular 19: Standalone by Default, linkedSignal and Data Loading with resource()
Frontend PART 28

Angular 19: Standalone by Default, linkedSignal and Data Loading with resource()

In Angular 19 you no longer write standalone: true. We compare linkedSignal for dependent state and the experimental resource() and rxResource for data loading with the Angular 12 way.

31 Oct 2026 8 min 57
What's New in Angular 18: Zoneless Change Detection, @let and Stable Control Flow
Frontend PART 27

What's New in Angular 18: Zoneless Change Detection, @let and Stable Control Flow

Experimental zoneless change detection in Angular 18, control flow and @defer going stable, @let from 18.1, ng-content fallback content, unified form events and redirect functions.

31 Oct 2026 7 min 77
What's New in Angular 17.x: input(), model(), output() and Signal Queries
Frontend PART 26

What's New in Angular 17.x: input(), model(), output() and Signal Queries

input(), input.required(), model(), output() and the viewChild()/viewChildren() signal queries from Angular 17.1–17.3, side by side with their Angular 12 @Input, @Output and @ViewChild counterparts.

31 Oct 2026 7 min 80
What's New in Angular 17: @if, @for, @defer and the New Application Builder
Frontend PART 25

What's New in Angular 17: @if, @for, @defer and the New Application Builder

The @if, @for and @switch control flow, @defer and its triggers, the esbuild and Vite based application builder and standalone ng new in Angular 17, compared with Angular 12.

31 Oct 2026 8 min 67
What's New in Angular 16: Signals, Required Inputs and takeUntilDestroyed
Frontend PART 24

What's New in Angular 16: Signals, Required Inputs and takeUntilDestroyed

Signals, computed and effect, the toSignal/toObservable bridge, required inputs and transforms, and subscription cleanup with takeUntilDestroyed in Angular 16, compared with Angular 12.

31 Oct 2026 8 min 70
Angular 15: Functional Guards, Functional Interceptors, hostDirectives and NgOptimizedImage
Frontend PART 23

Angular 15: Functional Guards, Functional Interceptors, hostDirectives and NgOptimizedImage

The second half of Angular 15: functional guards with CanActivateFn, functional interceptors with withInterceptors, composing directives with hostDirectives, and NgOptimizedImage with ngSrc.

31 Oct 2026 7 min 56
Standalone APIs in Angular 15: bootstrapApplication, provideRouter and Apps Without NgModule
Frontend PART 22

Standalone APIs in Angular 15: bootstrapApplication, provideRouter and Apps Without NgModule

Angular 15 made the standalone APIs stable. We build an app without AppModule using bootstrapApplication, provideRouter, provideHttpClient and importProvidersFrom, then migrate step by step.

31 Oct 2026 7 min 54
What Angular 14 Brought: Typed Reactive Forms, inject() and a First Look at Standalone Components
Frontend PART 21

What Angular 14 Brought: Typed Reactive Forms, inject() and a First Look at Standalone Components

Angular 14 made reactive forms typed: typed FormControl, nonNullable and NonNullableFormBuilder. Plus the inject() function, standalone components in developer preview and route titles.

31 Oct 2026 8 min 57
What Angular 13 Brought: Upgrading with ng update, Ivy-Only Angular and the New Dynamic Component API
Frontend PART 20

What Angular 13 Brought: Upgrading with ng update, Ivy-Only Angular and the New Dynamic Component API

We upgrade from Angular 12 to 13 step by step with ng update. View Engine's removal, the end of IE11, factory-less createComponent, the persistent build cache and Node/TypeScript requirements.

31 Oct 2026 9 min 61
Blog Map