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

КОМЕНТАРІ • 199

  • @tuntunpandit8367
    @tuntunpandit8367 Рік тому +145

    We Need more Angular projects like this.

  • @renends7615
    @renends7615 Рік тому +8

    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

  • @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

  • @lxdzii
    @lxdzii 10 місяців тому +7

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

  • @panayiotispanayiotou1637
    @panayiotispanayiotou1637 Рік тому +5

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

  • @mohammedsalmanali01
    @mohammedsalmanali01 Рік тому +15

    Thank you for finally posting an Angular Project ❣️

  • @CamiloMazorra
    @CamiloMazorra Рік тому +2

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

  • @Pratip.
    @Pratip. Рік тому +6

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

  • @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 5 місяців тому

    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.

  • @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 10 місяців тому

      I need complete mean stack project

  • @fparween5248
    @fparween5248 Рік тому

    Thanks for Angular project.😊 Need more projects

  • @piyushchaudhari2708
    @piyushchaudhari2708 Рік тому +9

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

  • @MaximusRGZ
    @MaximusRGZ Рік тому +8

    Amazing tutorial, it's really complete

  • @eliuddyn
    @eliuddyn Рік тому +4

    Best Angular Tutorial ever 🔥🔥

  • @MrTubber44
    @MrTubber44 11 місяців тому +1

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

  • @MrTubber44
    @MrTubber44 11 місяців тому

    Excellent Sloba. Thx!

  • @sagar2165
    @sagar2165 Рік тому +8

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

  • @leeroysdad
    @leeroysdad Рік тому

    This is so helpful 💯💯💯

  • @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....🙏

  • @natnaelsisay1424
    @natnaelsisay1424 Місяць тому

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

  • @GGSoft2009
    @GGSoft2009 10 місяців тому

    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.

  • @ntesla5
    @ntesla5 8 днів тому

    Great tutorial , thank you very much

  • @abrhamgg3647
    @abrhamgg3647 Рік тому +3

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

  • @jmarcetaa
    @jmarcetaa Рік тому +2

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

  • @mahamadoudjenepo7160
    @mahamadoudjenepo7160 Рік тому

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

  • @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 10 місяців тому

      what if the list is updated ?

    • @filthypirate
      @filthypirate 10 місяців тому

      @@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.

  • @agu160579
    @agu160579 Рік тому +1

    First learning it.

  • @puscjom8279
    @puscjom8279 9 місяців тому +2

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

  • @Lokibee1234
    @Lokibee1234 Рік тому +4

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

  • @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.

  • @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! ❤

  • @sidarthg2477
    @sidarthg2477 7 місяців тому

    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

  • @user-sq7si4jz5h
    @user-sq7si4jz5h 4 місяці тому

    Remerci boeur pour le travil vous farie nous le monde❤

  • @bhavikprajapati5400
    @bhavikprajapati5400 Рік тому +6

    justify-between not working don't know why

  • @aishaghalia1259
    @aishaghalia1259 Рік тому +2

    We need projects like this with Angular 15 please ♥

  • @ayashkh
    @ayashkh 10 місяців тому

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

  • @thedeeprot
    @thedeeprot Рік тому +1

    👌👌👌

  • @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 5 місяців тому

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

  • @martinbraga6655
    @martinbraga6655 9 місяців тому

    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

  • @manarkrid1700
    @manarkrid1700 Рік тому +1

    there is no database ?

  • @logiccomputer8000
    @logiccomputer8000 Рік тому

    We need more angular project

  • @tamilselvan152
    @tamilselvan152 7 місяців тому

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

  • @eleonora3139
    @eleonora3139 8 місяців тому

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

  • @dallasbaldwin4501
    @dallasbaldwin4501 Місяць тому

    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

  • @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.

  • @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 7 місяців тому

      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.

  • @vusimashaba3417
    @vusimashaba3417 11 місяців тому

    which stylesheet did u choose in the cmd?

  • @dheerajvithalkar
    @dheerajvithalkar 9 місяців тому +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. 😑

  • @nikolaivanovic8851
    @nikolaivanovic8851 6 місяців тому

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

    • @Msmc123
      @Msmc123 4 місяці тому

      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.

  • @georgenc7605
    @georgenc7605 Рік тому +2

    Nice

  • @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

  • @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?

  • @nataliavrs
    @nataliavrs Рік тому +2

    Angular = ❤

  • @chicorafa
    @chicorafa 24 дні тому

    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?

  • @AGUNGKAYA
    @AGUNGKAYA Рік тому +6

    I love angular

  • @user-pf8lq2zw7o
    @user-pf8lq2zw7o 3 місяці тому

    Which node js version dose this project use?

  • @franklin1014op
    @franklin1014op 7 місяців тому

    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

  • @benothmanbechir7729
    @benothmanbechir7729 11 місяців тому

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

  • @abrahamsecoe87
    @abrahamsecoe87 4 місяці тому

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

  • @rlosangeleskings
    @rlosangeleskings Рік тому

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

  • @amrashour7285
    @amrashour7285 9 місяців тому

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

  • @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

  • @atanughosh2959
    @atanughosh2959 Рік тому +1

    Good

  • @Xhhdebah
    @Xhhdebah Рік тому

    I want to donate my kidney to this channel

  • @shadowgazesup
    @shadowgazesup Рік тому

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

  • @kingstonic3504
    @kingstonic3504 8 місяців тому

    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 7 місяців тому

      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 7 місяців тому +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 6 місяців тому

      @@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.

  • @roysonsalis4915
    @roysonsalis4915 Рік тому +2

    Can we use online code editors?

  • @spraveenitpro
    @spraveenitpro Рік тому +3

    Please make a React version of this.

  • @Nodsaibot
    @Nodsaibot Рік тому +1

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

  • @Nayandin77
    @Nayandin77 Рік тому +1

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

  • @naijatechmentor
    @naijatechmentor Рік тому

    Fakestoreapi site is down

  • @fedechiar1
    @fedechiar1 6 місяців тому

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

    • @piyushkumar-jw8eb
      @piyushkumar-jw8eb 4 місяці тому

      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;
      }

  • @BrunoSilva-mx1ut
    @BrunoSilva-mx1ut 8 місяців тому +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

  • @crazcoder4243
    @crazcoder4243 Рік тому

    Git bash should zoom..

  • @hxdsgn4375
    @hxdsgn4375 Рік тому +1

    Nuxt next please

  • @shortscut7614
    @shortscut7614 Рік тому +1

    1:58:12

  • @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

  • @nocturnewarrior8649
    @nocturnewarrior8649 Рік тому +1

    First comment 🎉🎉🎉

  • @Martin-xf8be
    @Martin-xf8be Рік тому

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

  • @alvirarahman1559
    @alvirarahman1559 Рік тому +4

    Please post more Angular content T_T

  • @ecofirewall6676
    @ecofirewall6676 7 місяців тому

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

  • @vitorvono
    @vitorvono Рік тому

    My checkout is not working =(

  • @user-nl2vv7yc8h
    @user-nl2vv7yc8h 11 місяців тому

    Why do people use tailwind?

  • @mercee9980
    @mercee9980 Рік тому +1

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

  • @burhaanhassan5498
    @burhaanhassan5498 Рік тому

    Angular is gonna outdate near future

  • @expertsystem6379
    @expertsystem6379 6 місяців тому

    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.

  • @lpontes4489
    @lpontes4489 11 місяців тому

    3:17:12

  • @SnowdenFu-jh6bx
    @SnowdenFu-jh6bx 9 місяців тому

    package 1. material 2. tailwindcss

  • @elyanfi9541
    @elyanfi9541 Рік тому

    57:29

  • @TheQdfqdsf
    @TheQdfqdsf 6 місяців тому

    Someone is hungry at 2:17:20 😅

  • @mylenav
    @mylenav 3 місяці тому

    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: ua-cam.com/video/9p5ZXUmLKPs/v-deo.html
    I just was able to move on with this project after specifying the material version i was installing.

  • @alwaisy
    @alwaisy Рік тому

    why angular? still angular

  • @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.

  • @fadumohassan5336
    @fadumohassan5336 Рік тому

    I don't understand

  • @procode6881
    @procode6881 Рік тому +2

    People even use Angular now ?

    • @CodewithSloba
      @CodewithSloba Рік тому

      Absolutelly

    • @merlinwarage
      @merlinwarage Рік тому

      I'm working with Angular for 7 years now, and I've got like 2-3 job offers every day, so yeah, a lot of companies need it :)