Zoaib Khan
Zoaib Khan
  • 115
  • 686 476
Why NgRx Signal Store is My New Default | Angular State in 2024
#angular #ngrx #signals
✨✨ Get the dashboard (refactored to the ngrx signal store): zoaibkhan.lemonsqueezy.com/buy/4bc3b34d-4980-44be-80bc-bde1dc5b71e9
💡 Live Dashboard Link: angular-dashboard-lime.vercel.app/dashboard
In this video, we explore the NgRx Signal Store for state management in Angular applications as of 2024. Learn why the NgRx Signal Store has become the preferred choice, how it simplifies setup, integrates seamlessly with Angular signals, and boosts performance.
💖 Join my Patreon!
www.patreon.com/c/ZoaibKhan
Playlist for the Angular Material Dashboard series
th-cam.com/play/PLHbz-DWIAPJAUZSossNgj6-ds1MwSL2f_.html
📽️ My courses:
zoaibkhan.com/courses
✍️My blog for more free Angular posts:
zoaibkhan.com/blog
Socials:
Twitter - zoaibdev
Facebook - thisiszoaib
LinkedIn - www.linkedin.com/in/zoaib-khan-b6456815/
Sections:
00:00 Introduction and Overview
00:20 Why NGRX Signal Store?
01:04 Setting Up NGRX Signal Store
02:21 Integrating Signals with NGRX Signal Store
03:53 Managing Nested State
06:21 Derived State and Computed Properties
07:43 Updating State with Methods
09:24 Asynchronous and Reactive Methods
13:04 Local vs Global State
14:55 Custom Store Features
18:16 Conclusion and Future Plans
มุมมอง: 1 452

วีดีโอ

New Angular Material Docs make styling components a LOT easier!
มุมมอง 2.3K14 วันที่ผ่านมา
#angular #material #design ✨✨ Get the sidebar here: zoaibkhan.lemonsqueezy.com/buy/c30c9d41-3f27-40ef-8bb8-99cc3a883b5a My patreon: www.patreon.com/c/ZoaibKhan Learn how to override design tokens for granular customization of your material components. We'll walk through customizing a TH-cam sidebar project to maintain a specific visual look using Material 3 theming APIs. This tutorial will be ...
Angular 19 Resource API is exactly what we needed!
มุมมอง 2.8K21 วันที่ผ่านมา
#angular #signals #datafetching ✨Check out my humble Angular shop: zoaibkhan.lemonsqueezy.com/ 📽️ The problem with Angular Signals and Async Reactivity: th-cam.com/video/DGk6rjD3AG0/w-d-xo.html Learn more about the Resource API: push-based.io/article/everything-you-need-to-know-about-the-resource-api github.com/angular/angular/pull/58255 In this video, we dive into Angular 19's new experimental...
Combining Angular Material & Tailwind CSS - Best of Both Worlds!
มุมมอง 2.2Kหลายเดือนก่อน
#angular #material #tailwindcss ✨✨ Get the dashboard: zoaibkhan.lemonsqueezy.com/buy/4bc3b34d-4980-44be-80bc-bde1dc5b71e9 💡 Live Dashboard Link: angular-dashboard-lime.vercel.app/dashboard Join my Patreon! www.patreon.com/c/ZoaibKhan Playlist for the Angular Material Dashboard series th-cam.com/play/PLHbz-DWIAPJAUZSossNgj6-ds1MwSL2f_.html 📽️ My courses: zoaibkhan.com/courses ✍️My blog for more...
Summarized: Angular Material 18 Dark Theming with System Color Variables!
มุมมอง 872หลายเดือนก่อน
#angular #dashboard #material ✨✨ Get the dashboard: zoaibkhan.lemonsqueezy.com/buy/4bc3b34d-4980-44be-80bc-bde1dc5b71e9 🔗 Official Material Foundation Theme Builder material-foundation.github.io/material-theme-builder/ In this video, we'll add a dark mode to our Angular Material Dashboard using Material Design System Color Variables! ✨ Theme Builder App with 6 colors: zoaibkhan.lemonsqueezy.com...
How to create Sleek Angular Material Forms?
มุมมอง 2.7Kหลายเดือนก่อน
#angular #material #formsoftware ✨ Angular Shop: zoaibkhan.lemonsqueezy.com/ Join my Patreon! www.patreon.com/c/ZoaibKhan 📽️ My courses: zoaibkhan.com/courses ✍️My blog for more free Angular posts: zoaibkhan.com/blog In this video, I guide you through transforming large Angular Material form fields into sleek, compact designs. Leverage Angular Material's theming APIs and configuration settings...
Building a Drag & Drop Dashboard with Angular Material
มุมมอง 1.4Kหลายเดือนก่อน
#angular #dashboard #material ✨✨ Get the dashboard: zoaibkhan.lemonsqueezy.com/buy/4bc3b34d-4980-44be-80bc-bde1dc5b71e9 💡 Live Dashboard Link: angular-dashboard-lime.vercel.app/dashboard Playlist for the Customizable Dashboard series th-cam.com/play/PLHbz-DWIAPJAUZSossNgj6-ds1MwSL2f_.html Video on System Colot Variables in Angular Material th-cam.com/video/rLtF6MzTRA0/w-d-xo.html 📽️ My courses:...
Angular Material 18 Dark Theming with System Color Variables!
มุมมอง 3Kหลายเดือนก่อน
#angular #dashboard #material ✨✨ Get the dashboard: zoaibkhan.lemonsqueezy.com/buy/4bc3b34d-4980-44be-80bc-bde1dc5b71e9 🎉 New shop link: zoaibkhan.lemonsqueezy.com/ 🔗 Official Material Foundation Theme Builder material-foundation.github.io/material-theme-builder/ In this video, we'll add a dark mode to our Angular Material Dashboard using Material Design System Color Variables! ✨ Theme Builder ...
EASY Draggable Dashboard with Angular CDK DropList!
มุมมอง 1.9K2 หลายเดือนก่อน
#angular #dashboard #interactive ✨✨ Get the complete code for the Angular Customizable Dashboard here: zoaibkhan.lemonsqueezy.com/buy/4bc3b34d-4980-44be-80bc-bde1dc5b71e9 💡 Live Dashboard Link: angular-dashboard-lime.vercel.app/dashboard Playlist for the Customizable Dashboard series th-cam.com/play/PLHbz-DWIAPJAUZSossNgj6-ds1MwSL2f_.html 📽️ My courses: zoaibkhan.com/courses ✍️My blog for more ...
Building a 3D Product Configurator with Angular Three!
มุมมอง 1.9K2 หลายเดือนก่อน
#angular #threejs #3d ✨✨ Get the complete code here: zoaibkhan.lemonsqueezy.com/buy/cf5d783e-fe68-4f1c-9517-68779fe8b8b3 💡 Angular Three v2 docs: angularthree.netlify.app/ In this video, learn how to create a 3D product configurator using Angular and Angular 3. This tutorial covers the basics of setting up a 3D scene with Angular 3, using Tailwind CSS for styling, and employing 3.js for 3D rend...
Angular Material Customizable Dashboard #3: More Customization and Animations!
มุมมอง 2.2K2 หลายเดือนก่อน
#angular #dashboard #animation ✨✨ Get the complete code for the Angular Customizable Dashboard here: zoaibkhan.lemonsqueezy.com/buy/4bc3b34d-4980-44be-80bc-bde1dc5b71e9 💡 Live Dashboard Link: angular-dashboard-lime.vercel.app/dashboard 📽️ My courses: zoaibkhan.com/courses ✍️My blog for more free Angular posts: zoaibkhan.com/blog In the final part of the Angular Customizable Dashboard series, we...
Angular Material Customizable Dashboard #2: Adding Customization features!
มุมมอง 2.9K2 หลายเดือนก่อน
#angular #dashboard #animation ✨✨ Get the complete code for the Angular Customizable Dashboard here: zoaibkhan.lemonsqueezy.com/buy/4bc3b34d-4980-44be-80bc-bde1dc5b71e9 💡 Live Dashboard Link: angular-dashboard-lime.vercel.app/dashboard Playlist for the Angular sidebar tutorial th-cam.com/play/PLHbz-DWIAPJC9QksAO1PHobAGXde3CgIz.html 📽️ My courses: zoaibkhan.com/courses ✍️My blog for more free An...
Angular Material Customizable Dashboard #1: Create reusable widget components
มุมมอง 7K2 หลายเดือนก่อน
#angular #dashboard #animation ✨✨ Get the complete code for the Angular Customizable Dashboard here: zoaibkhan.lemonsqueezy.com/buy/4bc3b34d-4980-44be-80bc-bde1dc5b71e9 💡 Live Dashboard Link: angular-dashboard-lime.vercel.app/dashboard Join my Patreon! www.patreon.com/c/ZoaibKhan Playlist for the Angular sidebar tutorial th-cam.com/play/PLHbz-DWIAPJC9QksAO1PHobAGXde3CgIz.html 📽️ My courses: zo...
Auto Hiding Sticky Navbar with Angular and Motion One!
มุมมอง 2K3 หลายเดือนก่อน
#angular #navbar #motion ✨ Get the code here (for free): zoaibkhan.lemonsqueezy.com/buy/3efcb77f-3d47-4ff3-bf01-27905243a250 📽️ My courses: zoaibkhan.com/courses ✍️My blog for more free Angular posts: zoaibkhan.com/blog In this tutorial, we dive deep into creating an interactive sticky navbar in Angular. We'll explore how the navbar can hide itself after scrolling to a certain point and reappea...
Modern Angular Lazy Loading Guide!
มุมมอง 2.6K3 หลายเดือนก่อน
#angular #performance #optimization ✨ Get the Angular Dashboard App with Lazy Loading: zoaibkhan.lemonsqueezy.com/buy/4bc3b34d-4980-44be-80bc-bde1dc5b71e9 How to get the free TH-cam Data API key: developers.google.com/books/docs/v1/using 📽️ My courses: zoaibkhan.com/courses ✍️My blog for more free Angular posts: zoaibkhan.com/blog In this video, learn how to optimize a large Angular app with nu...
Building a Recursive Angular Sidebar Component
มุมมอง 2.9K3 หลายเดือนก่อน
Building a Recursive Angular Sidebar Component
Mastering Angular Component Communication!
มุมมอง 1.5K4 หลายเดือนก่อน
Mastering Angular Component Communication!
Are you using Angular Signal Effects in the RIGHT way?
มุมมอง 3.3K4 หลายเดือนก่อน
Are you using Angular Signal Effects in the RIGHT way?
How to make your Angular apps responsive with CDK Layout and CSS?
มุมมอง 3.9K4 หลายเดือนก่อน
How to make your Angular apps responsive with CDK Layout and CSS?
How to add reset password functionality with Angular and Firebase
มุมมอง 4265 หลายเดือนก่อน
How to add reset password functionality with Angular and Firebase
How to create a Nested Sidebar in Angular 18 with Material Components!
มุมมอง 11K5 หลายเดือนก่อน
How to create a Nested Sidebar in Angular 18 with Material Components!
How Angular Model Inputs helped me fix a weird bug in my app!
มุมมอง 7725 หลายเดือนก่อน
How Angular Model Inputs helped me fix a weird bug in my app!
I tested Angular 18 Zoneless mode and this is what I found out!
มุมมอง 2.8K5 หลายเดือนก่อน
I tested Angular 18 Zoneless mode and this is what I found out!
Easy, Dynamic Angular Material Theming with just 6 colors!
มุมมอง 10K6 หลายเดือนก่อน
Easy, Dynamic Angular Material Theming with just 6 colors!
Customizing Angular Material just got easier in v18!
มุมมอง 16K6 หลายเดือนก่อน
Customizing Angular Material just got easier in v18!
The problem with Angular Signals and Async Reactivity
มุมมอง 1.6K7 หลายเดือนก่อน
The problem with Angular Signals and Async Reactivity
How to add Quick Search to your Angular app with Google Books API!
มุมมอง 8457 หลายเดือนก่อน
How to add Quick Search to your Angular app with Google Books API!
Top 5 Angular Errors and how to resolve them!
มุมมอง 6908 หลายเดือนก่อน
Top 5 Angular Errors and how to resolve them!
How I built a Videos Explorer App with Angular 17 & YouTube Data API
มุมมอง 7948 หลายเดือนก่อน
How I built a Videos Explorer App with Angular 17 & TH-cam Data API
Power of Computed Signals in Angular #angular #reactivity #javascript
มุมมอง 2678 หลายเดือนก่อน
Power of Computed Signals in Angular #angular #reactivity #javascript

ความคิดเห็น

  • @asdasdasdasdasdasd-t5v
    @asdasdasdasdasdasd-t5v 8 ชั่วโมงที่ผ่านมา

    hi, when we call api, we write func directly in Component Class or service class, upgrade angular 19 make me confuse 😅

    • @ZoaibKhan
      @ZoaibKhan 7 ชั่วโมงที่ผ่านมา

      It's a best practice to keep it in a service, so that the component does not have much logic and only shows the data fetched

  • @macgideons4201
    @macgideons4201 13 ชั่วโมงที่ผ่านมา

    Super Excellent.. if you click on content it shows content , but when you click on video, you still see content page and video page together. is there a way to route to video or playlist without content page also been displayed? Thanks

  • @sohailazam8962
    @sohailazam8962 วันที่ผ่านมา

    It would have been better to have seen the kilometers also. But, You learned a lot from the interesting video.💯

  • @vladnovski6050
    @vladnovski6050 2 วันที่ผ่านมา

    Do you think there will be any reasonable way to use the Resource API together with state management tools like NGRX?

    • @ZoaibKhan
      @ZoaibKhan 2 วันที่ผ่านมา

      Yes, patterns will eventually emerge for the resource API for different use cases. Already some have suggested declaring resource in a service so that the component remains dumb. The same can be done with ngrx as well I guess

  • @IbrahimMouhsine
    @IbrahimMouhsine 3 วันที่ผ่านมา

    hello zoaib how add download progress bar in angular with fetch api ?

  • @IvanMalinovskyi-q4z
    @IvanMalinovskyi-q4z 3 วันที่ผ่านมา

    Hi! First of all, thank you for your awesome content. Secondly, I want to ask you something. I'm using mat-sidenav for the mobile view of my site. Could you explain how I can make the open and close transitions smoother? I tried using the transition CSS property, but it didn't help. I want to make it slower and smoother. I have a menu icon, and when I press it, the sidenav opens. When I click the close button, it fully closes.

    • @IvanMalinovskyi-q4z
      @IvanMalinovskyi-q4z 3 วันที่ผ่านมา

      I have one more question. I want to use a custom scrollbar for my site. The main content of the site is placed in the `mat-content`, and I'm using a background color for it. If I use a custom scrollbar for the body tag of the site and the scrollbar has a border-radius, there will be white spaces at the top and bottom because `mat-content` doesn't take the full width and height of the body. If I use a custom scrollbar for `mat-content` and set it to full height and width, it works, but when I change the screen size, this custom scrollbar remains visible every time. It's very annoying, especially on mobile screens. If I do it for the body, it works fine, but it leaves those corners.

    • @ZoaibKhan
      @ZoaibKhan 3 วันที่ผ่านมา

      Hmm, that's interesting. It should be easy with CSS transitions. I'll have to try it out and see for myself.

    • @ZoaibKhan
      @ZoaibKhan 3 วันที่ผ่านมา

      If possible, can you replicate this in a stackblitz so I can see exactly what is happening? That would be very helpful

    • @IvanMalinovskyi-q4z
      @IvanMalinovskyi-q4z 2 วันที่ผ่านมา

      @@ZoaibKhan youtube deleting the link.How can I give you the link for stackblitz ?

    • @ZoaibKhan
      @ZoaibKhan 2 วันที่ผ่านมา

      @@IvanMalinovskyi-q4z send it to consult@zoaibkhan.com

  • @techwake360
    @techwake360 4 วันที่ผ่านมา

    Could you please make a tutorial about local firestore emulator with angular?

  • @jamesrobb5827
    @jamesrobb5827 4 วันที่ผ่านมา

    It doesn't look like the docs are complete. 'list-item-hover-leading-icon-color' will actually set the hover colour of the icon even though it's not listed as a token. I've also tried 'list-item-focus-leading-icon-color' but that throws an error

    • @ZoaibKhan
      @ZoaibKhan 4 วันที่ผ่านมา

      Yeah there are some properties missing...we can also verify in the styles tab as well if we feel some property is not mentioned here

  • @C.Ruiloba
    @C.Ruiloba 5 วันที่ผ่านมา

    why didnt you use input signals there instead?

    • @ZoaibKhan
      @ZoaibKhan 4 วันที่ผ่านมา

      I think this video was done before signal inputs came along :)

  • @GunjanShrimali
    @GunjanShrimali 6 วันที่ผ่านมา

    Great content 🎉

    • @ZoaibKhan
      @ZoaibKhan 6 วันที่ผ่านมา

      Glad you liked it 😊

  • @ksknysn
    @ksknysn 7 วันที่ผ่านมา

    what about using mat-card beside widget?

    • @ZoaibKhan
      @ZoaibKhan 7 วันที่ผ่านมา

      Well, you can use mat card if you'd like. But since I wanted a more custom design, I went for my own styling. Mat card is basically just styling for the most part, so I only use if I want a material looking card quickly

    • @ksknysn
      @ksknysn 6 วันที่ผ่านมา

      @@ZoaibKhan i tried using theme but the themes can't be applied your custom widget. it confused me and my code so i decided to implement mat-card. i will see the result soon :)

    • @ZoaibKhan
      @ZoaibKhan 6 วันที่ผ่านมา

      @ksknysn that sounds good! For theming, I've another video on dynamic color variables where I use them to theme the widget component. Check that out in the theming playlist on the channel

    • @ksknysn
      @ksknysn 6 วันที่ผ่านมา

      @@ZoaibKhan thanks. i just now started to implementing it

    • @ksknysn
      @ksknysn 6 วันที่ผ่านมา

      @@ZoaibKhan if you add different theme options i think we can buy your dashboard :)

  • @christoeloff4591
    @christoeloff4591 7 วันที่ผ่านมา

    Thanks Zoaib, Iam really enjoying your content iam learning so much by following along !! cant wait for your next video series !!

    • @ZoaibKhan
      @ZoaibKhan 7 วันที่ผ่านมา

      Glad you liked the series! Next up is a basic Angular crash course :)

  • @RyanAtwell-i4d
    @RyanAtwell-i4d 7 วันที่ผ่านมา

    Man, you're a life-saver. Great approach and you explained it very well

    • @ZoaibKhan
      @ZoaibKhan 7 วันที่ผ่านมา

      Thanks Ryan! Glad you liked it :)

  • @DirtySouth33T
    @DirtySouth33T 10 วันที่ผ่านมา

    ok mind blown, i am all for this! please let me kow when you upload it i am going to purchase. i see so many use cases here for myself, great info and intro to this man!

    • @ZoaibKhan
      @ZoaibKhan 10 วันที่ผ่านมา

      Just uploaded it - there was a technical issue on lemon squeezy which is resolved now :) Glad you liked the store - I love refactoring stuff - so enjoyed this process!

    • @DirtySouth33T
      @DirtySouth33T 9 วันที่ผ่านมา

      @@ZoaibKhan i just bought it to play around with it. I wish you had a shared githib private repo that all your pateron supporters could collaborate on. i think that would be awesome. thanks buddy!

  • @jeffnikelson5824
    @jeffnikelson5824 10 วันที่ผ่านมา

    can you share the Sourcecode ?

    • @ZoaibKhan
      @ZoaibKhan 10 วันที่ผ่านมา

      It's part of the dashboard - the complete code can be bought on the link in the description.

  • @juniorngomajose9454
    @juniorngomajose9454 10 วันที่ผ่านมา

    Thanks for the video. What Can I do to render my login page outside this dashboard. I need a help, please!

    • @ZoaibKhan
      @ZoaibKhan 10 วันที่ผ่านมา

      Well, you can create a separate component and route for login - and then keep the rest of the dashboard + menu routes in a separate set of routes. There will be a router outlet on the main app component - and then there is already a router outlet for the normal page routes but it'll be nested inside the container Hope that helps a bit! If not, this seems like a good thing to show on video :)

    • @juniorngomajose9454
      @juniorngomajose9454 10 วันที่ผ่านมา

      @@ZoaibKhan Your explanation is very clear. I thank you once again. I will implement it to see if I can be successful.

  • @juniorngomajose9454
    @juniorngomajose9454 10 วันที่ผ่านมา

    Thank you for the video. I need a help. Can't implement login page outside ofthis router outlet :/

    • @ZoaibKhan
      @ZoaibKhan 10 วันที่ผ่านมา

      Check the other reply I've given on my recent video. Maybe I should create a video followup for this :)

    • @juniorngomajose9454
      @juniorngomajose9454 10 วันที่ผ่านมา

      @@ZoaibKhan Thank you very much for your feedback and for being so patient. In fact, a video would really help a lot.

  • @TheZukkino
    @TheZukkino 10 วันที่ผ่านมา

    Thanks for the lesson! This is a really useful tool. What about signalStore and Resource API interaction?

    • @ZoaibKhan
      @ZoaibKhan 10 วันที่ผ่านมา

      I think we might see some built in way to define resources within the signal store in future versions on the pattern of with computed.

  • @codeaz5673
    @codeaz5673 11 วันที่ผ่านมา

    hello sir, thank you for this tutorial! Can u please create a video how to create responsive admin panel from scratch with angular 18 and angular material. There are no resources for this topic on internet. It would be very helpful. Thank you in advance!

    • @ZoaibKhan
      @ZoaibKhan 10 วันที่ผ่านมา

      There is something similar already. Check out the Angular dashboard playlist on my channel

  • @MrWaflito
    @MrWaflito 11 วันที่ผ่านมา

    Thanks for great tutorial :) But does anyone have any idea why one of my components loading theme with delay ? I would appreciate the help.

    • @ZoaibKhan
      @ZoaibKhan 11 วันที่ผ่านมา

      You're welcome :) Can you elaborate a bit? What's different about that specific component?

    • @MrWaflito
      @MrWaflito 11 วันที่ผ่านมา

      @@ZoaibKhan Thanks for respond :) I have sidenav menu similar to that one in your angular 18 nested menu video. I added also an internalization and i have to use language service in sidenav component because i wanted to have translation for menu items . So i initialize menu items values in constructor after getting a translation. I removed translation service and initailized menu items your way but Sidenav component still change theme with a little bit of delay

  • @macgideons4201
    @macgideons4201 12 วันที่ผ่านมา

    Thanks for this video. can you do video using angular material and signals?

    • @ZoaibKhan
      @ZoaibKhan 12 วันที่ผ่านมา

      I already have in a recent video (though its using dynamic CSS color variables): th-cam.com/video/rLtF6MzTRA0/w-d-xo.html Will hopefully do a simpler one soon :)

  • @rafaelTomelin
    @rafaelTomelin 12 วันที่ผ่านมา

    you do make a video about the menu from the Firebase datastore!!!

    • @ZoaibKhan
      @ZoaibKhan 12 วันที่ผ่านมา

      you mean a menu generated from the firestore or something else?

    • @rafaelTomelin
      @rafaelTomelin 11 วันที่ผ่านมา

      @@ZoaibKhan yes, this, with the menu information recorded in a DB (firebase).

  • @rafaelTomelin
    @rafaelTomelin 12 วันที่ผ่านมา

    This video is great. You do have excellent videos about Angular, congratulations!!!❣

    • @ZoaibKhan
      @ZoaibKhan 12 วันที่ผ่านมา

      Thanks so much! Glad you liked it.

  • @alnes204
    @alnes204 13 วันที่ผ่านมา

    Thanks. But as you can see in your video (and it happens to me too): If I push a widget to the left everything is fine, if I push it to the right it wobbles briefly but noticeably right before the end. In my opinion it's not okay for a "real" project and difficult to fix because it's a second library.

    • @ZoaibKhan
      @ZoaibKhan 12 วันที่ผ่านมา

      Wow, you're really following this quite closely. I noticed some issues too, so ultimately I've planned to switch to the view transition API, just waiting for safari support

    • @alnes204
      @alnes204 12 วันที่ผ่านมา

      ​Maybe a fallback Option if client browser dont support view transition api ? ChatGpt gives me this, i cant test it yet: this.supportsViewTransition = 'startViewTransition' in document; If that works, its easy with @if or @switch template flow to made a fallback?​@@ZoaibKhan

    • @ZoaibKhan
      @ZoaibKhan 11 วันที่ผ่านมา

      @@alnes204 Yeah, that's the way to go about it! I'll let you know when I get to work on it - it seems like a fun video to make. View Transition API is due to be supported by all major browsers soon - so its great to learn about it as well

    • @alnes204
      @alnes204 11 วันที่ผ่านมา

      @@ZoaibKhan uhh nice, I'm really looking forward to this video 😄

  • @oleersoy6547
    @oleersoy6547 13 วันที่ผ่านมา

    Fantastic tutorial!! Would be really neat to see Tailwind Build Optimization / Minification too ....

    • @ZoaibKhan
      @ZoaibKhan 12 วันที่ผ่านมา

      Thanks 🙏 That's a good suggestion!

  • @swatisharma4241
    @swatisharma4241 13 วันที่ผ่านมา

    I didn’t use stand-alone so it is possible to imports all modules u define in ts file I import them in angular module ts

  • @christoeloff4591
    @christoeloff4591 13 วันที่ผ่านมา

    Thank you so much for this, you just made my life so much easier

    • @ZoaibKhan
      @ZoaibKhan 13 วันที่ผ่านมา

      Glad you liked it ☺️

  • @souradeeppanja739
    @souradeeppanja739 14 วันที่ผ่านมา

    Great video as usual, but one small doubt can't we use httpClient in resource api ? As if we use fetch then the interceptor will not work

    • @ZoaibKhan
      @ZoaibKhan 14 วันที่ผ่านมา

      There is an observable based equivalent to resource called rxResource. More details in the blog post here. push-based.io/article/everything-you-need-to-know-about-the-resource-api

    • @souradeeppanja739
      @souradeeppanja739 14 วันที่ผ่านมา

      @@ZoaibKhan Thanx a lot zoaib

  • @nithikathalu
    @nithikathalu 14 วันที่ผ่านมา

    Is it possible to reduce the height of textbox or dropdown

    • @ZoaibKhan
      @ZoaibKhan 14 วันที่ผ่านมา

      Yes, check the styling section for mat form field and mat select component. You can also use the density setting in the theming - I covered it on a video recently on sleek material forms

  • @empireofhearts
    @empireofhearts 15 วันที่ผ่านมา

    @zoaib Khan Absolutely great work. Can we get some clarification on how to get z-elevation working when using custom theme?

    • @ZoaibKhan
      @ZoaibKhan 15 วันที่ผ่านมา

      Does it not work as it is?

    • @empireofhearts
      @empireofhearts 13 วันที่ผ่านมา

      @@ZoaibKhan no as soon as you use light & dark theme colors from theme builder the elevation classes dont work. Im referring to pure M3 theming. no m2 compatability.

  • @igorr4682
    @igorr4682 16 วันที่ผ่านมา

    It seems the ship has definitely sailed for Angular! React and Next.js have taken over the scene, and let’s face it-Styled Components (shadcn/ui) give everything a sleeker, more polished look. Angular had a good run, but it might be time to board a more modern ship.

    • @ZoaibKhan
      @ZoaibKhan 16 วันที่ผ่านมา

      I like shadcn, it's great. Would love to have a similar headless UI lib in Angular as well. But that doesn't mean Angular is done. Modern Angular is getting really good with signals, easier components, better SSR support etc. So I wouldn't write it off just yet :)

  • @ArifMatubber-km4nv
    @ArifMatubber-km4nv 17 วันที่ผ่านมา

    awesome

    • @ZoaibKhan
      @ZoaibKhan 17 วันที่ผ่านมา

      Thanks Arif ☺️

  • @johnlama7850
    @johnlama7850 17 วันที่ผ่านมา

    How to achive the same in angular 15 or in angular 16

    • @ZoaibKhan
      @ZoaibKhan 15 วันที่ผ่านมา

      There is also a density option in Angular material 15. Because its material 2, we need to use a different function define the theme. See example on the docs: $my-theme: mat.define-light-theme(( color: ( primary: $my-primary, accent: $my-accent, ), density: 0, )); v15.material.angular.io/guide/theming#applying-a-theme-to-components

    • @johnlama7850
      @johnlama7850 15 วันที่ผ่านมา

      @@ZoaibKhan thanx, could you pls make a short video to achive the same for angular 15 as you have done for material 3

  • @antonmadjid
    @antonmadjid 17 วันที่ผ่านมา

    For Angular developers, both beginners and advanced. I highly recommend this channel. Thank you to @ZoaibKhan who has taken the time and effort to create this very useful content.

  • @MahmoudTarek-pz1rl
    @MahmoudTarek-pz1rl 18 วันที่ผ่านมา

    Thanks a lot for the great content and effort. I just wonder why, for the nested menu item, you didn't use MatExpansionPanel component ?

    • @ZoaibKhan
      @ZoaibKhan 18 วันที่ผ่านมา

      It's not meant for that purpose and also would've taken lot more time to customize the styling to match the sidebar style. Also, it'd have made it more difficult to make it recursive - as I did in the next video in this series.

    • @MahmoudTarek-pz1rl
      @MahmoudTarek-pz1rl 17 วันที่ผ่านมา

      @ZoaibKhan I've done something similar using ngTemplateOutlet for recursion and the expansion panel for nested items. The problem was that I had to override many styles, especially for the expansion. And have a problem controlling which panel to open if a nested link is active Your approach is much simpler, and animation is totally customizable. Most of the time, sidebar components have to be more customizable and fit every need possible. Thanks a lot for your great work

    • @ZoaibKhan
      @ZoaibKhan 17 วันที่ผ่านมา

      @@MahmoudTarek-pz1rl thanks Mahmoud! My sidebar is still quite simple. Have you seen the new shadcn sidebar component? That is truly remarkable

    • @MahmoudTarek-pz1rl
      @MahmoudTarek-pz1rl 17 วันที่ผ่านมา

      @ZoaibKhan You're welcome, Simple but have a good potential and fulfil many requirements, Yes, I've seen it on the day of releas, and it is on another level The approach he follows is really great. I hope we can have a similar package for angular. Maybe one day Spartan UI will do it as they say

  • @ccsocal768
    @ccsocal768 18 วันที่ผ่านมา

    You need to be a nerd to understand ANY of what you are talking about. I have better luck using/asking ChatGPT or Google Genesis to get REAL answers code and solutions. Google Dev Console is beyond a joke if you are doing batch fixes.

  • @DirtySouth33T
    @DirtySouth33T 19 วันที่ผ่านมา

    man yoou and i are for real on the same track LOL! These work in 18. as well :) I think the mat documentation was way behind

    • @ZoaibKhan
      @ZoaibKhan 19 วันที่ผ่านมา

      Yes, this is in v18! Only the docs are due in v19 - and they're much needed :) Just for fun: what are you working on next? :p I'll probably be adding the ngrx signal store to the dashboard next week :)

    • @DirtySouth33T
      @DirtySouth33T 14 วันที่ผ่านมา

      ​@@ZoaibKhan i could not beleive then i looked at the next documentation and saw all the new new section for styles. I am working on a mat toolbar and then a sidenav service so i can show or hide the sidenav based on the mat toolbar page. I look forward to your next video! I need to purchase this one i have the theme builder and another one but not this one

    • @ZoaibKhan
      @ZoaibKhan 14 วันที่ผ่านมา

      Thanks Adam! It's the sidebar used in the dashboard - except its just the sidebar :)

  • @alnes204
    @alnes204 19 วันที่ผ่านมา

    Hello, in your video, there is no data() signal inside widget-options ?! (look at: 23min). I add a data = input.required<Widget>(); inside widget-options and: <app-widget-options [data]="data()" [(showOptions)]="showOptions"></app-widget-options> so it works.

    • @ZoaibKhan
      @ZoaibKhan 18 วันที่ผ่านมา

      oh, thanks for pointing that out! My bad

  • @LarsRyeJeppesen
    @LarsRyeJeppesen 19 วันที่ผ่านมา

    I really really love the design tokens and what they have done to make Material more customizable. Amazing really

    • @ZoaibKhan
      @ZoaibKhan 19 วันที่ผ่านมา

      Yes, it has come a long way since the MDC refactor which was quite painful, but it has made it quite customizable! And it's not only material, PrimeNG also using CSS variables now, so it seems like a common trend

  • @muralitharan7834
    @muralitharan7834 19 วันที่ผ่านมา

    Hi Sir, the new Angular Material styling docs are incredibly helpful, and this video made them so much easier to understand and apply. Thank you for this wonderful video.

    • @ZoaibKhan
      @ZoaibKhan 19 วันที่ผ่านมา

      Glad you liked it! 😊

  • @merdjaneazzdine9099
    @merdjaneazzdine9099 19 วันที่ผ่านมา

    its not working

    • @ZoaibKhan
      @ZoaibKhan 19 วันที่ผ่านมา

      what exactly is not working?

  • @khizerrehan7164
    @khizerrehan7164 19 วันที่ผ่านมา

    Great Video: Q1: What if same application is being used multiple clients and there is a requirement of changing theme per client is it possible? And What is the best way to do that considering we have same application instead of clones? Q2: Importing "angular-material as mat" I am just wondering does it import ALL mixins what will be bundle size and it will be impacted in DOM when alot of pages and alot of components has these Token overriding? Any experience?

    • @LarsRyeJeppesen
      @LarsRyeJeppesen 19 วันที่ผ่านมา

      Q1 add new css vars to your themes. I have site with 10 themes, works perfectly

    • @ZoaibKhan
      @ZoaibKhan 19 วันที่ผ่านมา

      Thanks! For Q1: Each design token actually corresponds to a CSS variable, so you can switch between the CSS variables at runtime according to the client's theme. For Q2: It uses "use" from Sass, so it only imports the mixins once and we do that in the styles global file anyway, so any additional uses don't add on to what's there already.

  • @MichaelSmallDev
    @MichaelSmallDev 19 วันที่ผ่านมา

    The before and after for these styles is night and day. Very excited to get started with this, thank you for the overview.

    • @ZoaibKhan
      @ZoaibKhan 19 วันที่ผ่านมา

      Welcome, Micheal! Glad you liked it :) Coming up: A new set of material components which don't look like material components 😂

  • @alnes204
    @alnes204 19 วันที่ผ่านมา

    thanks, nice! :-)

    • @ZoaibKhan
      @ZoaibKhan 19 วันที่ผ่านมา

      Glad you liked it :)

  • @yamunadevi9106
    @yamunadevi9106 20 วันที่ผ่านมา

    Thank you so much for giving this video... finally, u come up with this solution for this form field customization. Thanks a lot 🎉😊

    • @ZoaibKhan
      @ZoaibKhan 20 วันที่ผ่านมา

      Glad you found it helpful ☺️

  • @fireflysemanticsmedia6267
    @fireflysemanticsmedia6267 20 วันที่ผ่านมา

    Brilliant - Thanks!!

    • @ZoaibKhan
      @ZoaibKhan 20 วันที่ผ่านมา

      Welcome 🤗

  • @jetonpeche
    @jetonpeche 21 วันที่ผ่านมา

    Replace httpClient ?!

    • @ZoaibKhan
      @ZoaibKhan 20 วันที่ผ่านมา

      Well, not replace exactly, but provide an alternative for now. Also, this is just for reading/fetching data, not for updating/creating.

  • @voltairend
    @voltairend 21 วันที่ผ่านมา

    Thank you Zoaib

    • @ZoaibKhan
      @ZoaibKhan 20 วันที่ผ่านมา

      You're welcome! 😄

  • @sley007
    @sley007 21 วันที่ผ่านมา

    Excellent!

    • @ZoaibKhan
      @ZoaibKhan 20 วันที่ผ่านมา

      Glad you liked it!

  • @kashifalikhan4420
    @kashifalikhan4420 22 วันที่ผ่านมา

    Nicely explained