Giter Site home page Giter Site logo

jamazon's Introduction

Hello I'm Travis! ๐Ÿ‘‹

I'm a software developer with a passion for front-end development but not afraid to tackle the back-end. I enjoy exploring new technologies, tackling challenging problems, and eager to constantly learn. Check out my repositories to see what Iโ€™ve been working on, and feel free to reach out if youโ€™d like to connect!

Linkedin Badge Gmail Badge

โšก Skills:

javascript logo react logo nextjs logo tailwindcss logo mongodb logo typescript logo html5 logo css3 logo git logo

jamazon's People

Contributors

travistn avatar

Watchers

 avatar  avatar

jamazon's Issues

User can view their cart summary.

๐Ÿ” Motivation

The user needs to see how much money they are spending and what they've added to the cart so far.

๐Ÿ‘ท Plan

Listen for clicks on the shopping cart and update the application state to the cart summary view.

๐Ÿ”ง Implementation

  • Create a wireframe.
  • Add a data-view container for the cart view to index.html.
  • Define a function that takes a cart item and returns a Bootstrap-styled DOM tree that includes the item name, brand, price, and image.
  • Define a function that takes a cart object and returns a DOM tree containing all of the rendered cart items as well as a heading, count, and total.
  • Add a 'click' event listener to the cart view container in index.html to update the app.view to 'cart' and trigger a re-render of the entire app state.
  • Allow the user to continue shopping.
  • Revise bootStrap styling to make cart view more visually appealing.

๐Ÿ–ผ Wireframe

view-cart-summary

User can view the details of an item.

๐Ÿ” Motivation

Users may need to know more information about an item before deciding to purchase it.

๐Ÿ‘ท Plan

Listen for clicks on the catalog, find the clicked item, update the application state, and render the details view.

๐Ÿ”ง Implementation

  • Create a wireframe.
  • Define a function that takes a catalog item and renders a DOM tree containing all of the details of an item styled with Bootstrap.
  • Define a function that takes an itemId and a list of catalog items and returns the item Object with the matching itemId.
  • Enhance the function that renders an item card to include a data-item-id attribute on the root element of the card.
  • Add a 'click' event listener to the catalog view on the page.
    • Use Element.closest to determine whether the event.target was an item and what its itemId is.
    • Update the app.view to 'details' if an item was clicked.
    • Update the app.details.item to the matching item Object.
  • Verify that clicking an item correctly updates the app state.
  • Add a data-view container to index.html for the 'details' view.
  • Define a function that takes a view name and adds a 'hidden' class to all data-view containers that don't match that view.
  • Enhance the function that renders the entire app state to populate and show the correct view.
  • Enhance 'click' listener to call the function that renders the entire app state.

๐Ÿ–ผ Wireframe

view-item-details

User can add an item to their cart.

๐Ÿ” Motivation

When a user wants to buy an item, they can stage it for purchase in a virtual cart.

๐Ÿ‘ท Plan

Listen for clicks on the details view and add the current item to the cart in the application state.

๐Ÿ”ง Implementation

  • Create a wireframe.
  • Revise initial app state to include a cart property to hold items the user wants to buy.
  • Define a function that takes a cart object and returns a DOM tree containing the count of items in the cart.
  • Add a container element to index.html to hold the rendered cart.
  • Enhance function that renders the entire app state to also render the cart.
  • Enhance function that renders item details to include a button for adding the item to the app.cart.
  • Add a 'click' event listener to the details view on the page.
    • Determine if the Add to Cart button was clicked and add the app.details.item to the app.cart.
  • Verify that clicking Add to Cart correctly updates the app state.
  • Re-render the app state when an item is added to the cart.
  • Rename addToCart function for better semantics

๐Ÿ–ผ Wireframe

add-to-cart

User can view a list of items for sale.

๐Ÿ” Motivation

Users will want to buy some drums, so we need to list the available items.

๐Ÿ‘ท Plan

Render the catalog view.

๐Ÿ”ง Implementation

  • Create a wireframe.
  • Create the initial main.js containing the state of the app.
  • Create the initial index.html page.
  • Add linter configuration for HTML, CSS, and JavaScript.
  • Define a function that takes an item from the catalog item and returns a Bootstrap card component DOM tree containing the brand, name, price, and image of the item.
  • Define a function that takes a catalog and returns a DOM tree containing a heading and a Bootstrap grid of rendered catalog items.
  • Define a function that renders the entire app state and inserts it into the view.
  • Adjust Bootstrap CSS classes to make the catalog visually appealing.
  • Remove function calls and lines of code that have no purpose.
  • Remove media queries that are already included in Bootsrap
  • Revise CSS identifiers and CSS formatting
  • Eliminate CSS properties by using bootStrap's utilities

๐Ÿ–ผ Wireframe

view-list-of-items

User can continue shopping.

๐Ÿ” Motivation

The user my want to buy more items and we want to sell more items.

๐Ÿ‘ท Plan

Listen for clicks on the details view and update the application state to the catalog view.

๐Ÿ”ง Implementation

  • Create a wireframe.
  • Enhance the function that renders item details to include a button for returning to the catalog.
  • Add a 'click' event listener to the data-details view to:
    • Update the app.view to 'catalog' if the button was clicked.
    • Trigger a re-render of the entire app state.

๐Ÿ–ผ Wireframe

continue-shopping

User can checkout.

๐Ÿ” Motivation

Getting paid.

๐Ÿ‘ท Plan

Listen for clicks on the cart summary view and update the application state to the checkout view.

๐Ÿ”ง Implementation

  • Create a wireframe.
  • Add a data-view container for the checkout view to index.html.
  • Enhance function that renders the cart summary to include a button for proceeding to check out.
  • Add a 'click' event listener to the cart view container to:
    • Update the app.view to 'checkout'.
    • Trigger a re-render of the entire app state.
  • Define a function that takes a cart object and returns a Bootstrap-styles DOM tree containing the cart total and a form to collect payment and shipping information from the user.
  • Show a confirmation message when the user submits their order.

๐Ÿ–ผ Wireframe

check-out

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.