Build a Webshop - Angular, Node.js, TypeScript, Stripe

แชร์
ฝัง
  • เผยแพร่เมื่อ 16 ก.ค. 2024
  • Build a Webshop! In this tutorial, we are going to build a webshop or e-commerce store using Angular/TypeScript, Express.js, and Stripe.
    We are gonna learn how to use Angular material and Tailwind to structure our UI and how to integrate store API into our app.
    Also at the end, we will build a checkout, and we are gonna integrate Stripe so that we can process payments.
    ✏️ Slobodan Gajic created this course. Check out his channel: / codewithsloba
    ⭐️ Resources ⭐️
    Code: github.com/bobangajicsm/E-Com...
    Fake store API: fakestoreapi.com/
    Stripe: stripe.com/
    Prebuilt checkout page: stripe.com/docs/checkout/quic...
    Stripe Shipping Code: stripe.com/docs/payments/chec...
    ⭐️ Contents ⭐️
    ⌨️ (0:00:00) Intro
    ⌨️ (0:01:01) Installing dependencies and project setup
    ⌨️ (0:18:11) Building home page
    ⌨️ (1:27:11) Building cart page
    ⌨️ (1:58:26) Implementing Cart logic
    ⌨️ (2:48:08) Implementing Store API
    ⌨️ (3:16:06) Stripe payment implementation
    🎉 Thanks to our Champion and Sponsor supporters:
    👾 Nattira Maneerat
    👾 Heather Wcislo
    👾 Serhiy Kalinets
    👾 Erdeniz Unvan
    👾 Justin Hual
    👾 Agustín Kussrow
    👾 Otis Morgan
    --
    Learn to code for free and get a developer job: www.freecodecamp.org
    Read hundreds of articles on programming: freecodecamp.org/news

ความคิดเห็น • 200

  • @tuntunpandit8367
    @tuntunpandit8367 ปีที่แล้ว +145

    We Need more Angular projects like this.

  • @gamehubgamer3678
    @gamehubgamer3678 ปีที่แล้ว +93

    Finally, Angular project......

    • @pravinjadhav8055
      @pravinjadhav8055 ปีที่แล้ว +8

      So true, everyone is running behind reactjs

    • @CodewithSloba
      @CodewithSloba ปีที่แล้ว +10

      I'm glad there is people who like Angular over React

    • @coupleodevs
      @coupleodevs ปีที่แล้ว +5

      react is amazing, im learning Angular because local jobs are 90% angular

    • @gommonebucato1562
      @gommonebucato1562 ปีที่แล้ว

      @@coupleodevs where are you from?

    • @Afdac247
      @Afdac247 ปีที่แล้ว

      ​@@coupleodevs where r u from

  • @renends7615
    @renends7615 ปีที่แล้ว +9

    This tutorial is excellent!
    The code quality, the tips, the explanation about each code construction.
    It will be reference!
    One more written on both channels!
    Thanks!

  • @Blade7850
    @Blade7850 ปีที่แล้ว +12

    Perfect timing. Like 10 minutes ago I started researching stripe for my webshop project

  • @mohammedsalmanali01
    @mohammedsalmanali01 ปีที่แล้ว +15

    Thank you for finally posting an Angular Project ❣️

  • @lxdzii
    @lxdzii 11 หลายเดือนก่อน +7

    More Angular projects please ❤🎉, this is a beautiful tutorial!!

  • @Pratip.
    @Pratip. ปีที่แล้ว +6

    🔥🔥🔥🔥😤🔥🔥🔥🔥
    This Channel can singlehandedly beat all these paid Upskilling sites.

  • @CamiloMazorra
    @CamiloMazorra ปีที่แล้ว +2

    Thanks for this project, I've learned a lot. Keep the angular projects coming please

  • @panayiotispanayiotou1637
    @panayiotispanayiotou1637 ปีที่แล้ว +5

    Great tutorial. I didn't expect you can do all this features in 3:47 minutes. It was amazing!!!!

  • @deluxe9490
    @deluxe9490 ปีที่แล้ว +16

    Amazing, we definitely need more angular and more complex projects ❤️ in future MEAN stack project would be great with more complex nodejs code. Thanks for great video.

    • @CodewithSloba
      @CodewithSloba ปีที่แล้ว +2

      You’re welcome

    • @shantisuma7738
      @shantisuma7738 ปีที่แล้ว +2

      bro do u have any full mean stack project with source code if u have plse share to me bro

    • @karunabisen
      @karunabisen 11 หลายเดือนก่อน

      I need complete mean stack project

  • @user-zb9ub5nd1z
    @user-zb9ub5nd1z 28 วันที่ผ่านมา

    Thanks a lot @Slobodan Gajic. Your teaching style is really easy to follow.

  • @piyushchaudhari2708
    @piyushchaudhari2708 ปีที่แล้ว +9

    Thanks a lot...much awaited Angular project I👍

  • @damin1916
    @damin1916 ปีที่แล้ว +6

    I changed the sort icon to sort because I thought it looked cool
    I did the nestjs course recently and i have to say angluar seems to click really well with nestjs.
    Nice course and thank you for making it for free Slobodan Gajic!!!

  • @realVvD
    @realVvD 6 หลายเดือนก่อน

    Excellent tutorial. The stripe docs was a little different, I had to look for the appropriate code, but still - there is finally a normal production level tutorial for angular on youtube.

  • @fparween5248
    @fparween5248 ปีที่แล้ว

    Thanks for Angular project.😊 Need more projects

  • @MaximusRGZ
    @MaximusRGZ ปีที่แล้ว +8

    Amazing tutorial, it's really complete

  • @MrTubber44
    @MrTubber44 ปีที่แล้ว

    Excellent Sloba. Thx!

  • @MrTubber44
    @MrTubber44 ปีที่แล้ว +1

    A potential sister project might be, same source code but with a ‘digital products’ implementation? Just an idea. Great stuff! Please continue👍🏾👏🏾🔥🔥🙏🏾

  • @eliuddyn
    @eliuddyn ปีที่แล้ว +4

    Best Angular Tutorial ever 🔥🔥

  • @natnaelsisay1424
    @natnaelsisay1424 2 หลายเดือนก่อน

    I have watched the hole video and it was amazing. Thank you

  • @ntesla5
    @ntesla5 หลายเดือนก่อน

    Great tutorial , thank you very much

  • @leeroysdad
    @leeroysdad ปีที่แล้ว

    This is so helpful 💯💯💯

  • @GGSoft2009
    @GGSoft2009 11 หลายเดือนก่อน

    It was very useful, thanks a lot!!!!

  • @karolwrzesinski7531
    @karolwrzesinski7531 ปีที่แล้ว +3

    I'm gonna go ahead and say this was hard. Learned a lot though, thank you.

  • @sagar2165
    @sagar2165 ปีที่แล้ว +8

    More Angular projects please 🙏🏼🙏🏼🙏🏼🥹🥹🥹

  • @jmarcetaa
    @jmarcetaa ปีที่แล้ว +2

    Sloba please don't listen these haters in the comments, keep making amazing content :)

  • @shubhampatankar1468
    @shubhampatankar1468 ปีที่แล้ว +4

    2nd view ❤️ and first comment...I am huge fan of all courses of free code camp. Please make a proper tutorial for Full stack development using MEAN and MERN stack....🙏

  • @Almighty_Flat_Earth
    @Almighty_Flat_Earth ปีที่แล้ว +8

    Vue and react make things unimaginably complicated, and those are childish libraries. Professional always prefer Angular, the King of kings.

  • @agu160579
    @agu160579 ปีที่แล้ว +1

    First learning it.

  • @abrhamgg3647
    @abrhamgg3647 ปีที่แล้ว +3

    i was following along and "justify-between" isn't working for me.?

  • @filthypirate
    @filthypirate ปีที่แล้ว +6

    You can actually move the products lists to the service class and create a caching functionality for all products. This way, you don't have to make unnecessary API request to the server when the data is actually cached inside the array list of products. That way, you can check to see if you have the product inside the services array list before making an API request.

    • @omarmetwally5450
      @omarmetwally5450 11 หลายเดือนก่อน

      what if the list is updated ?

    • @filthypirate
      @filthypirate 11 หลายเดือนก่อน

      @@omarmetwally5450 Without going too much in details, there are ways to solve that depending on the app, database, etc. You rarely need to fetch all updated lists. But say you're twitter and need constant live update of every list items, then you would need to listen for those server updates in real time. There is no way around it. But most apps don't need or use that kinda real time reactivity. In most reactive apps, you would listen for change per document or data row level, not list level. That means, when someone clicks a list item, you start listening for changes on that item. If that item is not in the database, you show error saying that item no longer exists. ETC

  • @pokumars1511
    @pokumars1511 ปีที่แล้ว

    I somehow got lost on how the fullWidthMode makes the component full-width. I cant seem to connect when we defined the implementation but it somehow also just works.

  • @puscjom8279
    @puscjom8279 10 หลายเดือนก่อน +2

    Redirect to checkout is deprecated, you should get session on frontend side.

  • @user-sq7si4jz5h
    @user-sq7si4jz5h 5 หลายเดือนก่อน

    Remerci boeur pour le travil vous farie nous le monde❤

  • @Lokibee1234
    @Lokibee1234 ปีที่แล้ว +4

    justify-between is not working , anybody can help me ?

  • @thedeeprot
    @thedeeprot ปีที่แล้ว +1

    👌👌👌

  • @mahamadoudjenepo7160
    @mahamadoudjenepo7160 ปีที่แล้ว

    Hii Good tuto
    What is the best backend for this king of project and for use Our own API ? Node JS ?

  • @bhavikprajapati5400
    @bhavikprajapati5400 ปีที่แล้ว +6

    justify-between not working don't know why

    • @CodewithSloba
      @CodewithSloba ปีที่แล้ว

      You need flex

    • @BrianRiendeau
      @BrianRiendeau ปีที่แล้ว

      @@CodewithSloba what does this mean?

    • @sethshuey974
      @sethshuey974 ปีที่แล้ว

      I didn't put justify-between in the correct div.

  • @martinbraga6655
    @martinbraga6655 10 หลายเดือนก่อน

    Hey, I closed virtual studio before finishing the tutorial, around the 1:12 minute mark, and now the page loads wierdly. The cart doesn´t open, categories button is small and says "ex", same with the show 12 button, and next to it it says viewviewview. In the console it started throwing this error: ERROR Error: Invalid value "rowHeight" set as rowHeight, and i don´t really know how to fix it

  • @sidarthg2477
    @sidarthg2477 8 หลายเดือนก่อน

    The course is very nice. But one note i would like to highlight. There is no need to provide the service in the app module as the injectable has a provided in data which does the job. For reference I deliberately dint provide it and the code still works exactly the same

  • @georgenc7605
    @georgenc7605 ปีที่แล้ว +2

    Nice

  • @devkodar303
    @devkodar303 ปีที่แล้ว

    hey, are u guys ever planning to do an in-depth Roblox studio tutorial with Lua? It would be pretty cool with it! Ty! ❤

  • @ayashkh
    @ayashkh 11 หลายเดือนก่อน

    Thank You very much, I respect your efforts, the finale Part (Payment with Stripe) was very useful for me

  • @logiccomputer8000
    @logiccomputer8000 ปีที่แล้ว

    We need more angular project

  • @eleonora3139
    @eleonora3139 9 หลายเดือนก่อน

    It cannot install agular cli version 14.0.0 at the beginning. It always installs 16.2.0

  • @manarkrid1700
    @manarkrid1700 ปีที่แล้ว +1

    there is no database ?

  • @tamilselvan152
    @tamilselvan152 8 หลายเดือนก่อน

    Whenever I refresh the page, the cart gets empty what do I need to do to retain the same

  • @dheerajvithalkar
    @dheerajvithalkar 10 หลายเดือนก่อน +1

    i am not able to justify-between because of some reason, I tried to install and reinstall tailwind and the whole project I am not able to send the cart to the extreme end of the page, same with some other classes as well. If anyone has faced the same issue and resolved them, please help me resolve aswell.
    EDIT:
    I found out a way of this, you have to make seperate class or id for the element and style it in the styles.css file instead of tailwind css. Works like a charm, but defeats the whole purpose of using tailwind. 😑

  • @nataliavrs
    @nataliavrs ปีที่แล้ว +2

    Angular = ❤

  • @hieudaica1304
    @hieudaica1304 ปีที่แล้ว +1

    hello, I am facing a weird problem. The button label is always display after the material icon. Does anyone in here have the same problem like I am?

  • @dallasbaldwin4501
    @dallasbaldwin4501 2 หลายเดือนก่อน

    I'm having a major issue getting this to be on an AWS lambda, and would really appreciate any help. Locally there is no issue, but I cannot get it to host anywhere

  • @aishaghalia1259
    @aishaghalia1259 ปีที่แล้ว +2

    We need projects like this with Angular 15 please ♥

  • @alfonzo444
    @alfonzo444 ปีที่แล้ว +1

    Question: i have implemented everything (im currently on hr 1:27) but i cant bind category property and I believe mx-auto class is not working properly (do i have to install bootstrap in project) It is explained in the course that mx-auto class is for putting paddings o centering content, right? anyway thanks for the effort and the material

    • @kozi-corner
      @kozi-corner ปีที่แล้ว +1

      It's a tailwindCss class not bootstrap. There is no bootstrap in this project

    • @chinomorales6293
      @chinomorales6293 6 หลายเดือนก่อน

      hey man, im doing the tutorial and i encountered the issue where category isn't being binded, have you perhaps solved this issue?

  • @AGUNGKAYA
    @AGUNGKAYA ปีที่แล้ว +6

    I love angular

  • @chicorafa
    @chicorafa หลายเดือนก่อน

    Hi, I don't know if I'm the only one, but my categories buttons don't respond well, sometimes I click and they don't trigger the event, even though it is visibly selected. Any idea why?

  • @franklin1014op
    @franklin1014op 8 หลายเดือนก่อน

    Hello, my whole app has gone into dark mode all of the suddent after closing the app and re-launching it. Does anyone know how to fix this? I have already done 1:45 min of the turoial

  • @atanughosh2959
    @atanughosh2959 ปีที่แล้ว +1

    Good

  • @Almighty_Flat_Earth
    @Almighty_Flat_Earth ปีที่แล้ว +3

    You should have increased the font size in the code editor. It's hard to read on the phones.

  • @rlosangeleskings
    @rlosangeleskings ปีที่แล้ว

    Looking for a Linux Debian base without M$ being used at all...

  • @jdicoder
    @jdicoder ปีที่แล้ว +1

    I have a little question,
    Why set services in app.module providers if services have providedIn: 'root' property?

    • @CodewithSloba
      @CodewithSloba ปีที่แล้ว

      Because that is the root 😁

    • @nunoarruda
      @nunoarruda 8 หลายเดือนก่อน

      Both ways do the same thing, they create a global instance of the service. But yeah, there's no need or no point in using both ways at the same time.

  • @shortscut7614
    @shortscut7614 ปีที่แล้ว +1

    1:58:12

  • @Nayandin77
    @Nayandin77 ปีที่แล้ว +1

    Am I the only one that noticed a snickers bar 1:16:25 🤣

  • @abrahamsecoe87
    @abrahamsecoe87 5 หลายเดือนก่อน

    It Seems I am not able to follow. Where ate the 3 line for {{ '150' | currency }} gone??

  • @ashiktm5631
    @ashiktm5631 ปีที่แล้ว +2

    2:11:06
    How does itemInCart +=1 change quanitiy in items array?

    • @merlinwarage
      @merlinwarage ปีที่แล้ว +1

      The cart.next() updates the subject.

    • @ashiktm5631
      @ashiktm5631 ปีที่แล้ว +1

      @@merlinwarage item object is used inside in cart.next() but itemIncart is not used anywhere.so if we increase the quantity how does item object changes?

    • @alexandrudabija1337
      @alexandrudabija1337 ปีที่แล้ว +1

      @@ashiktm5631 and i have the same question

    • @arunshankark9857
      @arunshankark9857 ปีที่แล้ว

      Hi
      ItemInCart + = 1 means
      ItemInCart = ItemInCart + 1

  • @vusimashaba3417
    @vusimashaba3417 ปีที่แล้ว

    which stylesheet did u choose in the cmd?

  • @amrashour7285
    @amrashour7285 10 หลายเดือนก่อน

    where is the code , it is in github or something ?

  • @shadowgazesup
    @shadowgazesup ปีที่แล้ว

    Why do you use manual subscriptions? In your case there is no sense to do that

  • @hellenickemetist
    @hellenickemetist ปีที่แล้ว

    I want to donate my kidney to this channel

  • @nikolaivanovic8851
    @nikolaivanovic8851 7 หลายเดือนก่อน

    Why is cart in header component private and in others is not? Great video :)

    • @Msmc123
      @Msmc123 5 หลายเดือนก่อน

      We need to use a private property to store the value of the cart, because if we use the cart property to store the value, we will have an infinite loop, because the setter will be called every time we try to set the value of the cart property.

  • @nocturnewarrior8649
    @nocturnewarrior8649 ปีที่แล้ว +1

    First comment 🎉🎉🎉

  • @naijatechmentor
    @naijatechmentor ปีที่แล้ว

    Fakestoreapi site is down

  • @bangzino
    @bangzino ปีที่แล้ว

    2:06:06 Would anyone anwser me that we already have providedIn: 'root' in Cart Serive. Why does we have to provider CartService in App Module again?

    • @lavkedar4199
      @lavkedar4199 ปีที่แล้ว

      hello , i haven't seen the complete video , but we dont , providing in app Module and providedIn : root is basically the same thing

  • @user-pf8lq2zw7o
    @user-pf8lq2zw7o 4 หลายเดือนก่อน

    Which node js version dose this project use?

  • @benothmanbechir7729
    @benothmanbechir7729 ปีที่แล้ว

    do this project work with angular 15 or i need to modify it ?

    • @catsanddogs6350
      @catsanddogs6350 8 หลายเดือนก่อน

      it'll work quite good.

  • @hxdsgn4375
    @hxdsgn4375 ปีที่แล้ว +1

    Nuxt next please

  • @lpontes4489
    @lpontes4489 ปีที่แล้ว

    3:17:12

  • @kingstonic3504
    @kingstonic3504 9 หลายเดือนก่อน

    Hey Guys!
    i followed all the steps,but when we placing the cart icon at 22:00 mins, into the header ,mine is at straight next to the a link on the left side......any reason why?

    • @zeuz3961
      @zeuz3961 8 หลายเดือนก่อน

      I had the same issue but i remember i fixed it by looking at the css path. but even after fixing the paths it still doesnt behave proporly but i went further and i am still stuck now at different point espcially when it comes to using tailwindcss

    • @makskrywionek1662
      @makskrywionek1662 8 หลายเดือนก่อน +1

      @@zeuz3961 because mx-auto doesn't work with mat-toolbar anymore, just add .mx-auto selector to the header.component.css file and the path to styleUrls in header.component.ts

    • @CodeF416
      @CodeF416 7 หลายเดือนก่อน

      @@makskrywionek1662 Thank you so much. I was also stuck here and had to do that. I don't know why this tutorial hasn't been updated yet.

  • @alvirarahman1559
    @alvirarahman1559 ปีที่แล้ว +4

    Please post more Angular content T_T

  • @crazcoder4243
    @crazcoder4243 ปีที่แล้ว

    Git bash should zoom..

  • @Nodsaibot
    @Nodsaibot ปีที่แล้ว +1

    good for practice but nothing you would use for production at all

  • @BrunoSilva-mx1ut
    @BrunoSilva-mx1ut 9 หลายเดือนก่อน +1

    Guys don't you thing that using frameworks like tawiling gets your html dirty? i rather much more doing only with sass using BEM pattern

  • @user-nl2vv7yc8h
    @user-nl2vv7yc8h ปีที่แล้ว

    Why do people use tailwind?

  • @ecofirewall6676
    @ecofirewall6676 8 หลายเดือนก่อน

    very good monologue try in radio but forgive students and forget teaching

  • @fedechiar1
    @fedechiar1 7 หลายเดือนก่อน

    I can't understand why my header toolbar doesn't center itself with mx-auto

    • @piyushkumar-jw8eb
      @piyushkumar-jw8eb 5 หลายเดือนก่อน

      you have to overridde the .mat-toolbar class by defuat its margin:0;
      .mat-toolbar,
      .mat-toolbar h1,
      .mat-toolbar h2,
      .mat-toolbar h3,
      .mat-toolbar h4,
      .mat-toolbar h5,
      .mat-toolbar h6{
      margin:0 auto;
      }

  • @elyanfi9541
    @elyanfi9541 ปีที่แล้ว

    57:29

  • @varun2716
    @varun2716 ปีที่แล้ว +2

    Which cloud certification has most job opportunities in India? At entry level
    As I see most people are learning AWS but as I think Nobody can challenge Google hegemony

  • @SnowdenFu-jh6bx
    @SnowdenFu-jh6bx 10 หลายเดือนก่อน

    package 1. material 2. tailwindcss

  • @roysonsalis4915
    @roysonsalis4915 ปีที่แล้ว +2

    Can we use online code editors?

  • @mboe94
    @mboe94 ปีที่แล้ว

    damn, app-header showing red line with me, not working

  • @spraveenitpro
    @spraveenitpro ปีที่แล้ว +3

    Please make a React version of this.

  • @burhaanhassan5498
    @burhaanhassan5498 ปีที่แล้ว

    Angular is gonna outdate near future

  • @vitorvono
    @vitorvono ปีที่แล้ว

    My checkout is not working =(

    • @Santon-Motho
      @Santon-Motho ปีที่แล้ว

      what error is it giving you?

  • @TheQdfqdsf
    @TheQdfqdsf 7 หลายเดือนก่อน

    Someone is hungry at 2:17:20 😅

  • @expertsystem6379
    @expertsystem6379 7 หลายเดือนก่อน

    Don't he forget to zoom in or something to be mobile friendly as well, probably very old tutorial but using angular 14 is not that oldwr.

  • @mercee9980
    @mercee9980 ปีที่แล้ว +1

    Please I need source code for a website that checks for serial number. More like product authentication using serial number

  • @alwaisy
    @alwaisy ปีที่แล้ว

    why angular? still angular

  • @mylenav
    @mylenav 4 หลายเดือนก่อน

    I had a problem with angular/material installation, it said: NOT SUPPORTED blabla something with id and $id , if you had it too, check the video: th-cam.com/video/9p5ZXUmLKPs/w-d-xo.html
    I just was able to move on with this project after specifying the material version i was installing.

  • @fadumohassan5336
    @fadumohassan5336 ปีที่แล้ว

    I don't understand

  • @krtirtho
    @krtirtho ปีที่แล้ว

    I thought Angular was deprecated

    • @TayambaMwanza
      @TayambaMwanza ปีที่แล้ว +1

      There's 2 versions "angularjs" is deprecated "angular" is alive and healthy (dumb naming though)

    • @CodewithSloba
      @CodewithSloba ปีที่แล้ว

      Why would you think so?

  • @orkhanfarmanli
    @orkhanfarmanli ปีที่แล้ว +2

    Just came here to say that I hate this thumbnail. It's unnecessary, unprofessional and discouraging. Thanks for your attention.

    • @CodewithSloba
      @CodewithSloba ปีที่แล้ว

      Sorry to hear that, but I see your point.