Channel Avatar

Rainer Hahnekamp @UCvRGM20x6vpMl1i-UhJ7IPQ@youtube.com

4.41K subscribers - no pronouns set

Welcome to my YouTube channel! I'm Rainer, a full-stack de


12:10
Reactive Contexts
01:39:24
Signals Unleashed: The Full Guide
20:15
How do I test Signals (signal / computed / effect)
12:15
How do I test Components & Routing with the RouterTestingHarness
15:41
How do test code using inject()
12:29
How do I test and mock Standalone Components
31:49
NgRx Signal Store Trilogy, Part 2: The Missing Piece to Signals
51:04
NgRx Signal Store Trilogy, Part 1: Why, When, and How?
27:31
Angular's Change Detection
48:53
Introducing Playwright
50:40
OpenAPI with Spring & Angular
43:14
GraalVM and Spring
03:04
Angular Signals enforce Immutability in v17
01:09:14
Cypress and Playwright: A Comparison
36:20
NgRx Best Practices - Episode 4: Facade Pattern
26:21
Angular Testing in 2023: Past, Present, and Future
29:58
Angular Unit Tests with the inject() function
55:26
Angular 15: Responsive Images with NgOptimizedImage, provideHttpClient, Directive Composition API
33:36
Type-Safe TypeScript with Type Narrowing
17:03
Angular 14.2: NgOptimizedImage & provideRouter
22:00
Angular 14.1
48:03
Cypress Component Testing in Angular
49:30
Migrating/Updating to Angular 14
24:05
Angular Standalone Components and their Impact on Modularity
13:08
Deep Linking in a Single Component
21:19
NgRx Best Practices - Episode 3: Routing & other Deferrals
07:26
NgRx createFeature
35:17
NgRx Best Practices - Episode 2: Architecture & Modules
21:51
NgRx Best Practices - Episode 1: Cache & LoadStatus
24:47
NgRx Best Practices - Folge 1: Cache & LoadStatus
19:05
NgRx Best Practices - Folge 0: Einleitung
14:43
NgRx Best Practices - Episode 0: Introduction
23:43
GrazJS: JavaScript Essentials: The Engine
05:41
ECS Single Instance