Rainer Hahnekamp
@rainerhahnekamp.bsky.social
Reposted by Rainer Hahnekamp
Many thanks to the lovely #ngdeconf crowd for the warm welcome and the enthusiasm about @testronaut!
Special thanks to @jeanmeche.com for being the perfect accomplice while @rainerhahnekamp.bsky.social and I cooked up some trouble together. 😉
Stay tuned 📻
Special thanks to @jeanmeche.com for being the perfect accomplice while @rainerhahnekamp.bsky.social and I cooked up some trouble together. 😉
Stay tuned 📻
November 7, 2025 at 1:34 PM
Many thanks to the lovely #ngdeconf crowd for the warm welcome and the enthusiasm about @testronaut!
Special thanks to @jeanmeche.com for being the perfect accomplice while @rainerhahnekamp.bsky.social and I cooked up some trouble together. 😉
Stay tuned 📻
Special thanks to @jeanmeche.com for being the perfect accomplice while @rainerhahnekamp.bsky.social and I cooked up some trouble together. 😉
Stay tuned 📻
Reposted by Rainer Hahnekamp
Getting ready with @rainerhahnekamp.bsky.social to make some announcements at #NgConf
Yes, it’s about #Angular #Testing
Yes, it’s about #Angular #Testing
October 18, 2025 at 2:39 PM
Getting ready with @rainerhahnekamp.bsky.social to make some announcements at #NgConf
Yes, it’s about #Angular #Testing
Yes, it’s about #Angular #Testing
Reposted by Rainer Hahnekamp
📢 I'll be giving an #Angular Vitest #testing workshop on Wednesday for @viteconf.org
You can register here: viteconf.amsterdam/workshops
🍛 Ingredients:
⚡️ Vitest
🦋 Zoneless
🐙 Testing Library
🍴 Techniques such as TDD, Fakes, and object mothers
🎁 Some surprises
...
🤯 It's free and online
You can register here: viteconf.amsterdam/workshops
🍛 Ingredients:
⚡️ Vitest
🦋 Zoneless
🐙 Testing Library
🍴 Techniques such as TDD, Fakes, and object mothers
🎁 Some surprises
...
🤯 It's free and online
October 6, 2025 at 3:37 PM
📢 I'll be giving an #Angular Vitest #testing workshop on Wednesday for @viteconf.org
You can register here: viteconf.amsterdam/workshops
🍛 Ingredients:
⚡️ Vitest
🦋 Zoneless
🐙 Testing Library
🍴 Techniques such as TDD, Fakes, and object mothers
🎁 Some surprises
...
🤯 It's free and online
You can register here: viteconf.amsterdam/workshops
🍛 Ingredients:
⚡️ Vitest
🦋 Zoneless
🐙 Testing Library
🍴 Techniques such as TDD, Fakes, and object mothers
🎁 Some surprises
...
🤯 It's free and online
In today’s episode of “Complicated things explained simply” 😅 – @eneajaho.me breaks down why JSX in #Angular wouldn’t be the same as in #React.
Clear. Precise. Just three sentences - and you get it. 👏
Highly recommend taking a look:
x.com/Enea_Jaholla...
Clear. Precise. Just three sentences - and you get it. 👏
Highly recommend taking a look:
x.com/Enea_Jaholla...
October 3, 2025 at 3:06 PM
In today’s episode of “Complicated things explained simply” 😅 – @eneajaho.me breaks down why JSX in #Angular wouldn’t be the same as in #React.
Clear. Precise. Just three sentences - and you get it. 👏
Highly recommend taking a look:
x.com/Enea_Jaholla...
Clear. Precise. Just three sentences - and you get it. 👏
Highly recommend taking a look:
x.com/Enea_Jaholla...
#Angular 20.2 is out!
🧭 Zoneless is now stable
🎞 New animations system
🧭 currentNavigation becomes a Signal
🔧 TS 5.9 + service worker updates
🚫 Still no Signal Forms - next change in v21.
Changelog 👉 github.com/angular/angu...
Details next week in @ng-news.bsky.social
🧭 Zoneless is now stable
🎞 New animations system
🧭 currentNavigation becomes a Signal
🔧 TS 5.9 + service worker updates
🚫 Still no Signal Forms - next change in v21.
Changelog 👉 github.com/angular/angu...
Details next week in @ng-news.bsky.social
Release 20.2.0 · angular/angular
animations
Commit
Description
deprecate the animations package (#62795)
compiler
Commit
Description
allow more characters in square-bracketed attribute names (#62742)
fixes an...
github.com
August 20, 2025 at 12:54 PM
#Angular 20.2 is out!
🧭 Zoneless is now stable
🎞 New animations system
🧭 currentNavigation becomes a Signal
🔧 TS 5.9 + service worker updates
🚫 Still no Signal Forms - next change in v21.
Changelog 👉 github.com/angular/angu...
Details next week in @ng-news.bsky.social
🧭 Zoneless is now stable
🎞 New animations system
🧭 currentNavigation becomes a Signal
🔧 TS 5.9 + service worker updates
🚫 Still no Signal Forms - next change in v21.
Changelog 👉 github.com/angular/angu...
Details next week in @ng-news.bsky.social
Reposted by Rainer Hahnekamp
Exciting news! Angular Voices of Asia is here – the first remote Angular conference spotlighting the amazing community across Asia! 🥳
Experience in-depth technical sessions, and connect with the Asian Angular community
🔗 Join us: angular-voices.asia
#AngularVoicesAsia #Angular #AsianDevelopers
Experience in-depth technical sessions, and connect with the Asian Angular community
🔗 Join us: angular-voices.asia
#AngularVoicesAsia #Angular #AsianDevelopers
Angular Voices of Asia
www.angular-voices.asia
August 8, 2025 at 11:29 AM
Exciting news! Angular Voices of Asia is here – the first remote Angular conference spotlighting the amazing community across Asia! 🥳
Experience in-depth technical sessions, and connect with the Asian Angular community
🔗 Join us: angular-voices.asia
#AngularVoicesAsia #Angular #AsianDevelopers
Experience in-depth technical sessions, and connect with the Asian Angular community
🔗 Join us: angular-voices.asia
#AngularVoicesAsia #Angular #AsianDevelopers
Keeping up with the rapid pace of #AI is tough. I went from VSCode to a #Cursor license, moved on to #ClaudeCode, and now I'm back on Cursor - this time with #ChatGPT 5. What’s next, #Gemini 3?
At least the light theme lives on. Imagine someone invents a "dark mode". God forbid 😅
At least the light theme lives on. Imagine someone invents a "dark mode". God forbid 😅
August 7, 2025 at 9:03 PM
Keeping up with the rapid pace of #AI is tough. I went from VSCode to a #Cursor license, moved on to #ClaudeCode, and now I'm back on Cursor - this time with #ChatGPT 5. What’s next, #Gemini 3?
At least the light theme lives on. Imagine someone invents a "dark mode". God forbid 😅
At least the light theme lives on. Imagine someone invents a "dark mode". God forbid 😅
Reposted by Rainer Hahnekamp
[New Article] All about DDD for Frontend Architectures (with Angular & Co.)
June 30, 2025 at 7:59 AM
[New Article] All about DDD for Frontend Architectures (with Angular & Co.)
Reposted by Rainer Hahnekamp
Latest ng-news:
🧭 @younesjd.dev introduces “chartered coding” – a structured approach to using LLMs in real dev workflows
💦 @michael-hladky.bsky.social demystifies SSR & Incremental Hydration in Angular
⚡ Evgenyi Tuboltsev explores Reactivity in #Angular
youtu.be/bk3aCGoafg8
🧭 @younesjd.dev introduces “chartered coding” – a structured approach to using LLMs in real dev workflows
💦 @michael-hladky.bsky.social demystifies SSR & Incremental Hydration in Angular
⚡ Evgenyi Tuboltsev explores Reactivity in #Angular
youtu.be/bk3aCGoafg8
Ng-News 25/25: "Charted" Coding, SSR & Incremental Hydration
YouTube video by ng-news
youtu.be
June 26, 2025 at 8:37 PM
Latest ng-news:
🧭 @younesjd.dev introduces “chartered coding” – a structured approach to using LLMs in real dev workflows
💦 @michael-hladky.bsky.social demystifies SSR & Incremental Hydration in Angular
⚡ Evgenyi Tuboltsev explores Reactivity in #Angular
youtu.be/bk3aCGoafg8
🧭 @younesjd.dev introduces “chartered coding” – a structured approach to using LLMs in real dev workflows
💦 @michael-hladky.bsky.social demystifies SSR & Incremental Hydration in Angular
⚡ Evgenyi Tuboltsev explores Reactivity in #Angular
youtu.be/bk3aCGoafg8
It’s always good to have someone looking over your shoulder…
Though having the "Gigantic @younesjd.dev" behind you is slightly intimidating 😄
Greetings from ng-Rome!
📸 Thanks to @martinakraus11.bsky.social for the picture.
Though having the "Gigantic @younesjd.dev" behind you is slightly intimidating 😄
Greetings from ng-Rome!
📸 Thanks to @martinakraus11.bsky.social for the picture.
June 20, 2025 at 4:48 PM
It’s always good to have someone looking over your shoulder…
Though having the "Gigantic @younesjd.dev" behind you is slightly intimidating 😄
Greetings from ng-Rome!
📸 Thanks to @martinakraus11.bsky.social for the picture.
Though having the "Gigantic @younesjd.dev" behind you is slightly intimidating 😄
Greetings from ng-Rome!
📸 Thanks to @martinakraus11.bsky.social for the picture.
Reposted by Rainer Hahnekamp
😊 Someone has the most privileged seat — from my kitchen — at @rainerhahnekamp.bsky.social 's talk "The Art of Testing" right now at #NgRome
#javascript #angular
#javascript #angular
June 20, 2025 at 12:34 PM
😊 Someone has the most privileged seat — from my kitchen — at @rainerhahnekamp.bsky.social 's talk "The Art of Testing" right now at #NgRome
#javascript #angular
#javascript #angular
My new video on the @ngrx.io SignalStore Events plugin is live! 🎬
It covers common use cases, like:
✅ Decoupling logic
✅ Cross-store communication
Also dubbed in multiple languages — including (ironically) German 🙃
📺 youtu.be/M5dxX3Dhdf4
#Angular #SignalStore
It covers common use cases, like:
✅ Decoupling logic
✅ Cross-store communication
Also dubbed in multiple languages — including (ironically) German 🙃
📺 youtu.be/M5dxX3Dhdf4
#Angular #SignalStore
NgRx SignalStore Events
YouTube video by Rainer Hahnekamp
youtu.be
June 3, 2025 at 4:00 PM
My new video on the @ngrx.io SignalStore Events plugin is live! 🎬
It covers common use cases, like:
✅ Decoupling logic
✅ Cross-store communication
Also dubbed in multiple languages — including (ironically) German 🙃
📺 youtu.be/M5dxX3Dhdf4
#Angular #SignalStore
It covers common use cases, like:
✅ Decoupling logic
✅ Cross-store communication
Also dubbed in multiple languages — including (ironically) German 🙃
📺 youtu.be/M5dxX3Dhdf4
#Angular #SignalStore
France’s finest 🇫🇷 – and two of the most respected names in the global #Angular scene – @jeanmeche.com & @younesjd.dev are opening the ng-baguette conference 🥖 in Nantes.
May 24, 2025 at 8:41 AM
France’s finest 🇫🇷 – and two of the most respected names in the global #Angular scene – @jeanmeche.com & @younesjd.dev are opening the ng-baguette conference 🥖 in Nantes.
RxJS & Native Observables: A Direct Comparison
🔁 78-min deep dive:
1️⃣ RxJS implementation
2️⃣ Native equivalent
🧠 Also a great way to refresh your #RxJS skills (error handling, share, teardown, etc.)
📺 youtu.be/WLHyzCY_1Tc
📝 Article coming soon
🔁 78-min deep dive:
1️⃣ RxJS implementation
2️⃣ Native equivalent
🧠 Also a great way to refresh your #RxJS skills (error handling, share, teardown, etc.)
📺 youtu.be/WLHyzCY_1Tc
📝 Article coming soon
Native & RxJS Observables: A Direct Comparison
YouTube video by Rainer Hahnekamp
youtu.be
May 13, 2025 at 10:09 AM
RxJS & Native Observables: A Direct Comparison
🔁 78-min deep dive:
1️⃣ RxJS implementation
2️⃣ Native equivalent
🧠 Also a great way to refresh your #RxJS skills (error handling, share, teardown, etc.)
📺 youtu.be/WLHyzCY_1Tc
📝 Article coming soon
🔁 78-min deep dive:
1️⃣ RxJS implementation
2️⃣ Native equivalent
🧠 Also a great way to refresh your #RxJS skills (error handling, share, teardown, etc.)
📺 youtu.be/WLHyzCY_1Tc
📝 Article coming soon
Reposted by Rainer Hahnekamp
🚨Trainer Spotlight: Rainer Hahnekamp (@rainerhahnekamp.bsky.social )
Rainer is a seasoned Angular trainer and consultant, known for making tough topics click for enterprise devs.
He’s co-author of the Angular Performance Workshop and joins #AngularConnect this September!
#Angular #WebDev
Rainer is a seasoned Angular trainer and consultant, known for making tough topics click for enterprise devs.
He’s co-author of the Angular Performance Workshop and joins #AngularConnect this September!
#Angular #WebDev
May 6, 2025 at 2:03 PM
🚨Trainer Spotlight: Rainer Hahnekamp (@rainerhahnekamp.bsky.social )
Rainer is a seasoned Angular trainer and consultant, known for making tough topics click for enterprise devs.
He’s co-author of the Angular Performance Workshop and joins #AngularConnect this September!
#Angular #WebDev
Rainer is a seasoned Angular trainer and consultant, known for making tough topics click for enterprise devs.
He’s co-author of the Angular Performance Workshop and joins #AngularConnect this September!
#Angular #WebDev
Reposted by Rainer Hahnekamp
Ng-News 25/14 is out!
▶️ Agentic Angular apps with LLMs
⚠️ Signal Forms won’t make #Angular 20
🧪 Vitest lands as experimental
🕵️♂️ Debugging memory leaks
📺 youtu.be/IZyCwaZIqnM
👇 Links below 👇
▶️ Agentic Angular apps with LLMs
⚠️ Signal Forms won’t make #Angular 20
🧪 Vitest lands as experimental
🕵️♂️ Debugging memory leaks
📺 youtu.be/IZyCwaZIqnM
👇 Links below 👇
Ng-News 25/18: Agentic Angular Apps
YouTube video by ng-news
youtu.be
May 5, 2025 at 1:27 PM
Ng-News 25/14 is out!
▶️ Agentic Angular apps with LLMs
⚠️ Signal Forms won’t make #Angular 20
🧪 Vitest lands as experimental
🕵️♂️ Debugging memory leaks
📺 youtu.be/IZyCwaZIqnM
👇 Links below 👇
▶️ Agentic Angular apps with LLMs
⚠️ Signal Forms won’t make #Angular 20
🧪 Vitest lands as experimental
🕵️♂️ Debugging memory leaks
📺 youtu.be/IZyCwaZIqnM
👇 Links below 👇
Reposted by Rainer Hahnekamp
I'm happy to be part of this. Together with @rainerhahnekamp.bsky.social I will do our Angular Architecture workshop there. Big thanks to the organizers for bringing back this epic conference – it marked the beginning of so many friendships and careers back then!
🚨Trainer Spotlight: Manfred Steyer (@manfredsteyer.bsky.social)
Manfred is a Google Developer Expert, author, and trainer at Angular Architects — known for helping enterprise teams master scalable Angular.
He’s joining #AngularConnect this year as a workshop trainer!
#Angular #WebDev
Manfred is a Google Developer Expert, author, and trainer at Angular Architects — known for helping enterprise teams master scalable Angular.
He’s joining #AngularConnect this year as a workshop trainer!
#Angular #WebDev
May 5, 2025 at 12:39 PM
I'm happy to be part of this. Together with @rainerhahnekamp.bsky.social I will do our Angular Architecture workshop there. Big thanks to the organizers for bringing back this epic conference – it marked the beginning of so many friendships and careers back then!
Gave a talk this Monday on unit testing in #Angular - basics, mocking, async tasks, and more!
Slides (with repo link) are here:
speakerdeck.com/rainerhahnek...
Big thanks to @angular-community.bsky.social for organizing!
Slides (with repo link) are here:
speakerdeck.com/rainerhahnek...
Big thanks to @angular-community.bsky.social for organizing!
Test Fest | Angular Unit Tests Distilled
This 45-minute workshop dives into unit testing in Angular with a focus on controlling asynchronous code and mocking dependencies effectively. You'll le…
speakerdeck.com
April 25, 2025 at 3:01 PM
Gave a talk this Monday on unit testing in #Angular - basics, mocking, async tasks, and more!
Slides (with repo link) are here:
speakerdeck.com/rainerhahnek...
Big thanks to @angular-community.bsky.social for organizing!
Slides (with repo link) are here:
speakerdeck.com/rainerhahnek...
Big thanks to @angular-community.bsky.social for organizing!
🐢 In a few hours I’ll be speaking at the @angular-community.bsky.social Meetup series on testing — and yes, the official theme is Turtle Power!
I’m covering:
✔️ Basics
✔️ Async
✔️ Mocks & fakes
💥 Cover by ChatGPT might be overkill, but I stand by the tests 😄
🔗 angularcommunity.net/events
I’m covering:
✔️ Basics
✔️ Async
✔️ Mocks & fakes
💥 Cover by ChatGPT might be overkill, but I stand by the tests 😄
🔗 angularcommunity.net/events
April 21, 2025 at 1:24 PM
🐢 In a few hours I’ll be speaking at the @angular-community.bsky.social Meetup series on testing — and yes, the official theme is Turtle Power!
I’m covering:
✔️ Basics
✔️ Async
✔️ Mocks & fakes
💥 Cover by ChatGPT might be overkill, but I stand by the tests 😄
🔗 angularcommunity.net/events
I’m covering:
✔️ Basics
✔️ Async
✔️ Mocks & fakes
💥 Cover by ChatGPT might be overkill, but I stand by the tests 😄
🔗 angularcommunity.net/events
Here are the slides from my talk on Micro Frontends in #Angular (including source code), which I gave at Ng-India last week
🔗 speakerdeck.com/rainerhahnek...
Finally, huge respect to @dhananjay7.bsky.social for running this conference with such dedication, even in the face of occasional headwinds.
🔗 speakerdeck.com/rainerhahnek...
Finally, huge respect to @dhananjay7.bsky.social for running this conference with such dedication, even in the face of occasional headwinds.
Micro Frontends: Necessity, Implementation, and Challenges
Micro Frontends are a hot topic, promising an architecture where multiple teams can work independently on a single application, making their own technic…
speakerdeck.com
April 15, 2025 at 2:00 PM
Here are the slides from my talk on Micro Frontends in #Angular (including source code), which I gave at Ng-India last week
🔗 speakerdeck.com/rainerhahnek...
Finally, huge respect to @dhananjay7.bsky.social for running this conference with such dedication, even in the face of occasional headwinds.
🔗 speakerdeck.com/rainerhahnek...
Finally, huge respect to @dhananjay7.bsky.social for running this conference with such dedication, even in the face of occasional headwinds.
Marko Stanimirović previewed the upcoming events (Redux) feature for @ngrx.io SignalStore at #ngIndia
🚀 Could land by end of April
🔁 Unifies global + component state
My take: The current SignalStore handles most global states fine, mainly smoothing the transition from the classic Global Store.
🚀 Could land by end of April
🔁 Unifies global + component state
My take: The current SignalStore handles most global states fine, mainly smoothing the transition from the classic Global Store.
April 14, 2025 at 3:08 PM
Reposted by Rainer Hahnekamp
Tomorrow’s stream:
Extending the SignalStore, inspired by:
@fabiangosebrink.bsky.social: offering.solutions/blog/article...
@manfredsteyer.bsky.social: ngrx-toolkit.angulararchitects.io/docs/with-da...
Not all entities are fully CRUD-able. Find a solution (w/
@rainerhahnekamp.bsky.social).
Extending the SignalStore, inspired by:
@fabiangosebrink.bsky.social: offering.solutions/blog/article...
@manfredsteyer.bsky.social: ngrx-toolkit.angulararchitects.io/docs/with-da...
Not all entities are fully CRUD-able. Find a solution (w/
@rainerhahnekamp.bsky.social).
Dynamic SignalStore Features with Conditional Types
YouTube video by Rainer Hahnekamp
youtube.com
March 21, 2025 at 4:33 AM
Tomorrow’s stream:
Extending the SignalStore, inspired by:
@fabiangosebrink.bsky.social: offering.solutions/blog/article...
@manfredsteyer.bsky.social: ngrx-toolkit.angulararchitects.io/docs/with-da...
Not all entities are fully CRUD-able. Find a solution (w/
@rainerhahnekamp.bsky.social).
Extending the SignalStore, inspired by:
@fabiangosebrink.bsky.social: offering.solutions/blog/article...
@manfredsteyer.bsky.social: ngrx-toolkit.angulararchitects.io/docs/with-da...
Not all entities are fully CRUD-able. Find a solution (w/
@rainerhahnekamp.bsky.social).
🛠️ Angular Testing Workshop – Next Week
A hands-on 3-day workshop covering Playwright, Jest & Testing Strategies.
🎟️ 10% OFF with code 2TMJA2A2 (valid until Sunday)
🔗 angulararchitects.io/en/training/professional-angular-testing-playwright-edition
#Angular #Testing #Playwright #Jest
A hands-on 3-day workshop covering Playwright, Jest & Testing Strategies.
🎟️ 10% OFF with code 2TMJA2A2 (valid until Sunday)
🔗 angulararchitects.io/en/training/professional-angular-testing-playwright-edition
#Angular #Testing #Playwright #Jest
March 18, 2025 at 8:05 PM
🛠️ Angular Testing Workshop – Next Week
A hands-on 3-day workshop covering Playwright, Jest & Testing Strategies.
🎟️ 10% OFF with code 2TMJA2A2 (valid until Sunday)
🔗 angulararchitects.io/en/training/professional-angular-testing-playwright-edition
#Angular #Testing #Playwright #Jest
A hands-on 3-day workshop covering Playwright, Jest & Testing Strategies.
🎟️ 10% OFF with code 2TMJA2A2 (valid until Sunday)
🔗 angulararchitects.io/en/training/professional-angular-testing-playwright-edition
#Angular #Testing #Playwright #Jest
This Friday! Looking forward to it 🎉🥳
📷 Join @rainerhahnekamp.bsky.social & I on Rainer's first YT channel livestream this Friday!
Building a customizable CRUD extension for #NgRx SignalStore that dynamically enables/disables features - with #TypeScript adapting the types! 🔥
📅Mar 21 @ 1PM Central US
www.youtube.com/live/1D8VTlT...
Building a customizable CRUD extension for #NgRx SignalStore that dynamically enables/disables features - with #TypeScript adapting the types! 🔥
📅Mar 21 @ 1PM Central US
www.youtube.com/live/1D8VTlT...
Dynamic SignalStore Features with Conditional Types
YouTube video by Rainer Hahnekamp
www.youtube.com
March 17, 2025 at 9:55 PM
This Friday! Looking forward to it 🎉🥳
Reposted by Rainer Hahnekamp
📷 Join @rainerhahnekamp.bsky.social & I on Rainer's first YT channel livestream this Friday!
Building a customizable CRUD extension for #NgRx SignalStore that dynamically enables/disables features - with #TypeScript adapting the types! 🔥
📅Mar 21 @ 1PM Central US
www.youtube.com/live/1D8VTlT...
Building a customizable CRUD extension for #NgRx SignalStore that dynamically enables/disables features - with #TypeScript adapting the types! 🔥
📅Mar 21 @ 1PM Central US
www.youtube.com/live/1D8VTlT...
Dynamic SignalStore Features with Conditional Types
YouTube video by Rainer Hahnekamp
www.youtube.com
March 17, 2025 at 9:46 PM
📷 Join @rainerhahnekamp.bsky.social & I on Rainer's first YT channel livestream this Friday!
Building a customizable CRUD extension for #NgRx SignalStore that dynamically enables/disables features - with #TypeScript adapting the types! 🔥
📅Mar 21 @ 1PM Central US
www.youtube.com/live/1D8VTlT...
Building a customizable CRUD extension for #NgRx SignalStore that dynamically enables/disables features - with #TypeScript adapting the types! 🔥
📅Mar 21 @ 1PM Central US
www.youtube.com/live/1D8VTlT...