IST 256 group storefront project for Confused Hardware.
This repository contains a multi-page frontend prototype built with HTML, CSS, Bootstrap, and vanilla JavaScript. It includes shopper registration, a shopping page with filters and cart behavior, and a product management form that saves product data in browser localStorage.
The project combines two assignment tracks:
- Shopper Management page behavior and JSON data handling
- Product Management page behavior and JSON data handling
All data is currently client-side (no backend database).
- HTML5
- CSS3
- Bootstrap 5 (CDN)
- Vanilla JavaScript
- JSON (sample data files + browser localStorage)
Homepage.html- Landing page navbar and welcome card
- Reads
userDatafrom localStorage and displays shopper info
Register.html- Shopper signup form with browser validation
- Saves shopper fields into localStorage under
userData - Redirects to
homepage.htmlafter submit
Shopping.html- Product grid (Raspberry Pi products)
- Price filter, category toggle, sort options
- Add-to-cart flow with toast notifications
- Saves cart state under
cartData
product-mang.html- Product management form (new/update by product ID)
- Saves products under
productData - Displays stored JSON preview
data.json- Seed/sample product document with
Productsarray
- Seed/sample product document with
group.JSON- Group member/contact metadata
script.js- Contains shopper collection utilities (
shopperCollectionkey), table/json rendering helpers, and form init logic - Designed for a form/table layout that is not fully wired to current HTML pages
- Contains shopper collection utilities (
scripts.js- Present but currently empty
styles.css- Global baseline styles (light background and default font)
Shopping.htmlalso includes substantial inline styling for the storefront layout.
userData: shopper registration payloadcartData: shopping cart items and quantityproductData: product management collectionshopperCollection: used byscript.jshelper flow
Because this is a static frontend project, you can run it directly in a browser.
- Open
Homepage.htmlin a browser (or with VS Code Live Server). - Use
Register.htmlto create/update shopper details. - Visit
Shopping.htmlfor storefront filtering/sorting/cart behavior. - Open
product-mang.htmlfor product create/update testing.
- Register a shopper on
Register.html. - Confirm shopper details render on
Homepage.html. - Add products in
Shopping.htmland confirmcartDataupdates. - Save/update products in
product-mang.htmland verify JSON preview.
- No backend persistence yet; data clears when browser localStorage is reset.
Register.htmlredirects tohomepage.html(lowercase) while file name isHomepage.html.- Product management navbar references
ProductManagement.html, but the file in this repo isproduct-mang.html. - Some shopper logic in
script.jsappears to be from an alternate page structure and is not fully connected to current markup.
From group.JSON:
- Karim Alsayed
- Christian Merfert
- Aiden Donahue