From c2371994c977e007d1e827c993daf2b94ea3e1e3 Mon Sep 17 00:00:00 2001 From: Corangit Date: Wed, 3 Dec 2025 14:08:06 -0800 Subject: [PATCH 01/10] Created outline for readme - set up for deployment and handover guide --- README.md | 8 ++++++++ backend/data/products_test.json | 13 +++++++++++++ 2 files changed, 21 insertions(+) diff --git a/README.md b/README.md index e69de29..e3f73ce 100644 --- a/README.md +++ b/README.md @@ -0,0 +1,8 @@ +Welcome to Netflix & Coding Online Web Shopping Platform! + +Team Members: +Kithe Kisia +Coran McColm +Fraser Muller +Harrison Kayihura + diff --git a/backend/data/products_test.json b/backend/data/products_test.json index ff37549..08d7752 100644 --- a/backend/data/products_test.json +++ b/backend/data/products_test.json @@ -24,5 +24,18 @@ "product_link": "https://example.com/tv", "rating": 4.8, "rating_count": 43994 + }, + { + "product_id": "B09NX5K7QP", + "product_name": "Dell XPS 13 Laptop", + "category": "Electronics|Computers", + "discounted_price": 89999.0, + "actual_price": 119999.0, + "discount_percentage": 25.0, + "about_product": "Ultra-portable laptop", + "img_link": "https://example.com/laptop.jpg", + "product_link": "https://example.com/laptop", + "rating": 4.6, + "rating_count": 7928 } ] \ No newline at end of file From 313dd2cb94681ca5e54f013ede8c2f7596801625 Mon Sep 17 00:00:00 2001 From: Corangit Date: Wed, 3 Dec 2025 14:17:41 -0800 Subject: [PATCH 02/10] Added some of the descriptions for requirement entries, TODO: API config, Account CCreds, Docker installation --- README.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/README.md b/README.md index e3f73ce..0e1ae5d 100644 --- a/README.md +++ b/README.md @@ -6,3 +6,19 @@ Coran McColm Fraser Muller Harrison Kayihura + Installation Instructions: Step-by-step setup procedures for running the system using Docker: + +Docker compose up -d + + Dependencies: A complete list of required tools, libraries, and services (with version details): +For a full list of requirements for the system, please see requirements.txt . We recommend running +pip3 install -r "requirements.txt" upon loading the system into a virtual environment. + + Maintenance Requirements: Details on ongoing maintenance, including: + + Account credentials (if applicable): + + Database management procedures: +In our systems configuration, all read and writes from or two any of our JSON files includle checks for duplicates and safety checks for removals. We recommend using the built in functions to create or remove any data entries from the database. However, if you wish to add entries manually, please follow the HashMap/Dict structure of the files. We have a key (either the product or user code depending) which relates to data entries 'under' the umbrella of what the key represents. This changed depending on case but is evident when reading the file with this given background knowledge. + + Configuration of external APIs or service: \ No newline at end of file From adefa4242edfd3c15050a66f57af4f9914aef82f Mon Sep 17 00:00:00 2001 From: Corangit Date: Wed, 3 Dec 2025 14:19:00 -0800 Subject: [PATCH 03/10] small changes TODO still applies --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 0e1ae5d..a053711 100644 --- a/README.md +++ b/README.md @@ -7,14 +7,14 @@ Fraser Muller Harrison Kayihura Installation Instructions: Step-by-step setup procedures for running the system using Docker: - +Running the system using docker requires a few steps. BLAH BLAH BLAH. You must then run the following commands: Docker compose up -d Dependencies: A complete list of required tools, libraries, and services (with version details): For a full list of requirements for the system, please see requirements.txt . We recommend running pip3 install -r "requirements.txt" upon loading the system into a virtual environment. - Maintenance Requirements: Details on ongoing maintenance, including: + Maintenance Requirements: Details on ongoing maintenance, including: Account credentials (if applicable): From 4065d22866ed26d845c6ffcb690e7c5a01004c8d Mon Sep 17 00:00:00 2001 From: Corangit Date: Wed, 3 Dec 2025 14:27:54 -0800 Subject: [PATCH 04/10] added account credentials --- README.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/README.md b/README.md index a053711..8a29d26 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,13 @@ pip3 install -r "requirements.txt" upon loading the system into a virtual enviro Maintenance Requirements: Details on ongoing maintenance, including: Account credentials (if applicable): +Admin user login details: +email:admin@example.com +password:AdminPass1 +The user dashboard/account can be switched to using the login feature - once logged out, when you try to process an add to cart or add to feature process, you will be prompted to login. +Example User login credentials: +email:user@gmail.com +password:User@123.com Database management procedures: In our systems configuration, all read and writes from or two any of our JSON files includle checks for duplicates and safety checks for removals. We recommend using the built in functions to create or remove any data entries from the database. However, if you wish to add entries manually, please follow the HashMap/Dict structure of the files. We have a key (either the product or user code depending) which relates to data entries 'under' the umbrella of what the key represents. This changed depending on case but is evident when reading the file with this given background knowledge. From 9a312db767eaad5894059aea46f15a416985303e Mon Sep 17 00:00:00 2001 From: Corangit Date: Wed, 3 Dec 2025 14:44:49 -0800 Subject: [PATCH 05/10] Addded external API configuration --- README.md | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 8a29d26..17b8d24 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -Welcome to Netflix & Coding Online Web Shopping Platform! +Welcome to COSC310 Netflix & Coding Online Web Shopping Platform! We hope you find this system useful and efficient. Team Members: Kithe Kisia @@ -11,8 +11,9 @@ Running the system using docker requires a few steps. BLAH BLAH BLAH. You must t Docker compose up -d Dependencies: A complete list of required tools, libraries, and services (with version details): -For a full list of requirements for the system, please see requirements.txt . We recommend running -pip3 install -r "requirements.txt" upon loading the system into a virtual environment. +For a full list of requirements for the system, please see requirements.txt . We recommend running: +pip3 install -r "requirements.txt" +upon loading the system into a virtual environment. Maintenance Requirements: Details on ongoing maintenance, including: @@ -28,4 +29,10 @@ password:User@123.com Database management procedures: In our systems configuration, all read and writes from or two any of our JSON files includle checks for duplicates and safety checks for removals. We recommend using the built in functions to create or remove any data entries from the database. However, if you wish to add entries manually, please follow the HashMap/Dict structure of the files. We have a key (either the product or user code depending) which relates to data entries 'under' the umbrella of what the key represents. This changed depending on case but is evident when reading the file with this given background knowledge. - Configuration of external APIs or service: \ No newline at end of file + Configuration of external APIs or service: +We have used two External APIs in the development. + +Base Currency Layer for currency conversion: "https://cdn.jsdelivr.net/npm/@fawazahmed0/currency-api@latest/v1/currencies/{base_currency_lower}.json" +This layer is configured in the external files (ie external_service, external_router etc.). The way it works is first we call through this API to return the most recent exchange rate. Once this function has executed we then call a price conversion function using this previously obtained conversion rate to calculate local prices. We have shortened the available currencies to GBP CAD EUR USD, from the data native Rupees. + +Image Scaper: Creates a mimick request to amazon, finding the necessary image from a provided product link from the database. From this image, the scaper obtains the URL landing image which is transfered back into the database to refresh the image. The scraper is configured in two parts: image_scraper_service to do the work and admin router.post where we require ADMIN permissions to request all photo refreshes. This is largely beneficial as amazon natively has an image expiry. Our approach navigates around this. \ No newline at end of file From 5acb1bd95f88e558629a6d074f70a402bc90470e Mon Sep 17 00:00:00 2001 From: Corangit Date: Wed, 3 Dec 2025 14:46:27 -0800 Subject: [PATCH 06/10] Small changed, TODO: Docker installation instructions --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 17b8d24..4fa5ee6 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Docker compose up -d Dependencies: A complete list of required tools, libraries, and services (with version details): For a full list of requirements for the system, please see requirements.txt . We recommend running: pip3 install -r "requirements.txt" -upon loading the system into a virtual environment. +upon loading into a virtual environment to ensure no conflicting packages and minimal running package load. Maintenance Requirements: Details on ongoing maintenance, including: From 7be7fc1fd8fb4c542f67cc45a9c00cf993979db5 Mon Sep 17 00:00:00 2001 From: Corangit Date: Wed, 3 Dec 2025 14:53:26 -0800 Subject: [PATCH 07/10] Everything ready except Docker commands setup --- README.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4fa5ee6..f031298 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,11 @@ Fraser Muller Harrison Kayihura Installation Instructions: Step-by-step setup procedures for running the system using Docker: -Running the system using docker requires a few steps. BLAH BLAH BLAH. You must then run the following commands: +Since we are containerized, running the system using docker requires a few steps. Assuming you have Docker desktop. You must then run the following commands: Docker compose up -d +OR +Docker -compose up +Depending on system running the program. Dependencies: A complete list of required tools, libraries, and services (with version details): For a full list of requirements for the system, please see requirements.txt . We recommend running: From 71412f721befc444b434921a26e5205a0360567c Mon Sep 17 00:00:00 2001 From: Corangit Date: Wed, 3 Dec 2025 15:48:59 -0800 Subject: [PATCH 08/10] Small changed. TODO: Docker --- README.md | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/README.md b/README.md index f031298..a96cb4a 100644 --- a/README.md +++ b/README.md @@ -8,10 +8,7 @@ Harrison Kayihura Installation Instructions: Step-by-step setup procedures for running the system using Docker: Since we are containerized, running the system using docker requires a few steps. Assuming you have Docker desktop. You must then run the following commands: -Docker compose up -d -OR -Docker -compose up -Depending on system running the program. +ENTER COMMANDS HERE Dependencies: A complete list of required tools, libraries, and services (with version details): For a full list of requirements for the system, please see requirements.txt . We recommend running: From 54f6b3532430694b2f23a98442045fd4490b4716 Mon Sep 17 00:00:00 2001 From: Corangit Date: Thu, 4 Dec 2025 01:11:03 -0800 Subject: [PATCH 09/10] Finalized readme with installation instructions from Docker --- README.md | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index a96cb4a..12bc150 100644 --- a/README.md +++ b/README.md @@ -7,8 +7,20 @@ Fraser Muller Harrison Kayihura Installation Instructions: Step-by-step setup procedures for running the system using Docker: -Since we are containerized, running the system using docker requires a few steps. Assuming you have Docker desktop. You must then run the following commands: -ENTER COMMANDS HERE +Since we are containerized, running the system using docker requires a few steps. Only assuming you have Docker desktop, here are some instructions to install the program, please make sure you are running commands in terminal and have the correct GitHub directory. +Step 1, first clone and enter directory: +git clone https://github.com/KitheK/Netflix-and-Coding.git +cd Netflix-and-Coding + +Step 2, Checkout main branch (there by default): +git checkout main + +Step 3, Build and Start Everything (first time), this will start up both the containerized front and backend: +docker compose up --build https://github.com/KitheK/Netflix-and-Coding + +Step 4, Shutting down the program: +docker compose down + Dependencies: A complete list of required tools, libraries, and services (with version details): For a full list of requirements for the system, please see requirements.txt . We recommend running: From 0e064cfab4113ea252c5c3b1579250b0baf51c60 Mon Sep 17 00:00:00 2001 From: Corangit Date: Thu, 4 Dec 2025 10:24:01 -0800 Subject: [PATCH 10/10] small --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 12bc150..e1dc693 100644 --- a/README.md +++ b/README.md @@ -25,7 +25,7 @@ docker compose down Dependencies: A complete list of required tools, libraries, and services (with version details): For a full list of requirements for the system, please see requirements.txt . We recommend running: pip3 install -r "requirements.txt" -upon loading into a virtual environment to ensure no conflicting packages and minimal running package load. +upon loading into a virtual environment to ensure no conflicting packages and minimal running package load. Instructions for how to initialize a virtual environment depend on your operating system and are outside the scope of this handoff. Maintenance Requirements: Details on ongoing maintenance, including: