Giter VIP home page Giter VIP logo

react-shopping-cart-prpl's Introduction

๐Ÿ›๏ธ Simple ecommerce cart application built with React & Redux CircleCI


Basic Overview - Live Demo

This simple shopping cart prototype shows how React components and Redux can be used to build a friendly user experience with instant visual updates and scaleable code in ecommerce applications.

Features

  • Add and remove products from the floating cart
  • Sort products by highest to lowest and lowest to highest price
  • Filter products by available sizes
  • Products persist in floating cart even after page reloads
  • Responsive design for desktop, tablets and mobile
  • Product stoppers for free shipping
  • Unit tests, integration tests and e2e testing

Using

  • React
    • Redux - state management
  • Nodejs
    • Express CORS Middleware (Node and React run in different port)
    • Nodemon - for a better development experience
    • Concurrently - To run multiple tasks at once
  • Axios - for promise HTTP requests
  • CSS
    • BEM methodology
    • SASS
  • Moxios - to stub http request
  • Enzyme - to mount, shallow, render and query the DOM tree of React components
  • Webdriverio - to do automated tests in a real browser environment
  • Native local storage - to persist products in cart even after page reload

Getting started

You can play with the code on CodeSandbox :)

Edit react-shopping-cart

Build/Run

Requirements

  • Node.js
  • NPM
/* First, Install the needed packages */
npm install

/* Then start both Node and React */
npm start

/* To run the tests */
npm run test

/* Running e2e tests */
npm run wdio

About tests

  • Unit tests
    • All components have at least a basic smoke test
  • Integration tests
    • Fetch product and add to cart properly
  • e2e
    • Webdriverio - Add and remove product from cart

Copyright and license

The MIT License (MIT). Please see License File for more information.



A little project by Jefferson Ribeiro

react-shopping-cart-prpl's People

Contributors

arwalokhandwala avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.