Skip to content

Latest commit

 

History

History
222 lines (149 loc) · 7.15 KB

2-interact-js-css.md

File metadata and controls

222 lines (149 loc) · 7.15 KB

👖 Step 2 - Interact with the Products

How to interact data with JavaScript, HTML and CSS in the browser

Table of Contents

🎯 Objective

Build a Usable and pleasant web page that interacts with arrays, objects, functions etc... with JavaScript, HTML and CSS.

🏗 Prerequisites

  1. Be sure to have a clean working copy.

This means that you should not have any uncommitted local changes.

cd /path/to/workspace/clear-fashion
❯ git status
On branch master
Your branch is up to date with 'origin/master'.

nothing to commit, working tree clean
  1. Pull the master branch to update your local with the new remote changes
❯ git remote add upstream git@github.com:92bondstreet/clear-fashion.git
## or ❯ git remote add upstream https://github.com/92bondstreet/clear-fashion
❯ git fetch upstream
❯ git pull upstream master
  1. Open the entry point ../client/v2/index.html in your browser (that loads the ../client/v2/portfolio.js file)
# macos cli
❯ open client/v2/index.html
# linux cli
❯ xdg-open client/v2/index.html

# or by double-clicking in your browser files
  1. Check the rendering of your browser webpage

📱 Features

I will describe each feature with the Agile User Story template.

A User Story is an informal, general explanation of a software feature written from the perspective of the end user or customer.

A user story should typically have a summary structured this way:

  1. As a [user concerned by the story]
  2. I want [goal of the story]
  3. so that [reason for the story]

Feature 0 - Show more

As a user
I want to show more products
So that I can display 12, 24 or 48 products on the same page

Feature 1 - Browse pages

As a user
I want to browse available pages
So that I can load more products

Feature 2 - Filter by brands

As a user
I want to filter by brands name
So that I can browse product for a specific brand

Feature 3 - Filter by recent products

As a user
I want to filter by by recent products
So that I can browse the new released products (less than 2 weeks)

Feature 4 - Filter by reasonable price

As a user
I want to filter by reasonable price
So that I can buy affordable product i.e less than 50€

Feature 5 - Sort by price

As a user
I want to sort by price
So that I can easily identify cheapest and expensive products

Feature 6 - Sort by date

As a user
I want to sort by price
So that I can easily identify recent and old products

Feature 8 - Number of products indicator

As a user
I want to indicate the number of displayed products
So that I can understand how many products is available

Feature 9 - Number of recent products indicator

As a user
I want to indicate the number of displayed products
So that I can understand how many new products is available

Feature 10 - p50, p90 and p95 price value indicator

As a user
I want to indicate the p50, p90 and p95 price value
So that I can understand the price values of the products

Feature 11 - Last released date indicator

As a user
I want to indicate the last released date
So that I can understand if we

Feature 12 - Open product link

As a user
I want to open product link in a new page
So that I can buy the product easily

Feature 12 - Save as favorite

As a user
I want to save a product as favorite
So that I can retreive this product later

Feature 4 - Filter by favorite

As a user
I want to filter by favorite products
So that I can load only my favorite products

Feature 12 - Usable and pleasant UX

As a user
I want to parse a usable and pleasant web page
So that I can find valuable and useful content

👩‍💻 Just tell me what to do

  1. Solve each User Stories inside ../client/v2/portfolio.js file with JavaScript

  1. Once an User Story is solved, commit your modification:
cd /path/to/workspace/clear-fashion
❯ git add -A && git commit -m "feat(display): show 12, 24 or 48 products"

(why following a commit message convention?)

  1. Commit early, commit often
  2. Don't forget to push before the end of the workshop
❯ git push origin master

Note: if you catch an error about authentication, add your ssh to your github profile.

  1. Check that your codebase works by checking the console output
  2. If you need some helps on git commands, read git - the simple guide

Don't forget. 4 Focus.

Focus on coding and web design

🛣️ Related Theme and courses