Chương 1: GIỚI THIỆU DE TÀI Ở chương này chúng em trình bày sơ lược về đề tài, lý do chọn đề tài, các mục tiêu trong đề tài, kèm theo đó là đối tượng nghiên cứu. Giới thiệu đề tài Đề tài Website bán quần áo tích hợp Web3 là một đề tài thú vị và có ý nghĩa trong lĩnh vực thương mại điện tử. Website bán quần áo là một loại Website chuyên cung cấp các sản phẩm quan áo của nhiều thương hiệu, kiểu đáng va mức giá khác nhau. Ly do chọn dé tài Trong thời đại hiện nay mạng internet là một sản phẩm hết sức lớn lao và là nền tảng chính cho sự truyền tài, trao đổi thông tin trên toàn cầu.
Trong hoạt động san xuất kinh doanh, giờ đây thương mại điện tử đã khang định được vai trò xúc tiễn và thúc đây hoạt động của doanh nghiệp. Đối với một cửa hàng, việc quảng bá và giới thiệu đến khách hàng các sản phâm mới đáp ứng được nhu cầu của khách hàng là rất cần thiết. Vì vậy, nhóm em đã quyết định “Xây dựng Website bán quan áo tích hợp Web3" có tên là Fashion Flow giới thiệu và cung cấp các loại quần áo sang trọng đang có mặt trên thị trường và khách hàng có thê đặt hàng ngay tại Website mà không cần đến trực tiếp điểm giao dịch. Việc này giúp cho khách hàng có thể chủ động và tiết kiệm thời gian của chính mình.
Mục tiêu trong đề tài Xây dựng Website bán quan áo cùng hệ thống gợi ý sản phâm cho khách hang. Xây dựng được hệ thống quản lý bán hàng đảm bảo thực hiện được đầy đủ các chức năng cơ bản của một Website bán hàng. Giải quyết tối ưu hóa quá trình mua bán qua mạng phù hợp với thực tiễn Tìm hiểu nghiên cứu về Blockchain, áp dụng công nghệ thanh toán Web3 vào của hàng. Tìm hiéu va ứng dụng các công nghệ mới, nâng cao kỹ năng phát triên phân mêm.
Đối tượng nghiên cứu 1. Các công nghệ - Front-end: Nextjs, Redux, Tailwind, Ant design, Metamark, Recaptcha - Backend: NodeJS, asp.net core, clean architecture, ImediaR - Web3: Ethereum, solidity, sepolia, openzepplin, ERC-721 - Database: Postgres, Cloudinary, MongoDB - Recombee Service - Google Analytics 4 1. Đối tượng phạm vi dé tài hướng đến - _ Các cửa hàng muốn có một Website bán quan áo - _ Khách hàng muốn mua sản phẩm trực tuyến - _ Khách hàng có kiến thức cơ bản về Web3 1. Phạm vi Đề tài tập trung vào xây dựng hệ thống trên nền tảng Website hướng tới đối tượng sử dụng là những người có nhu cầu mua quần áo.
Áp dụng tại các cửa hàng bán quần áo muốn có Website bán quần áo trực tuyến. Người dùng có điện thoại hoặc laptop có internet là có thể truy cập. Phương pháp thực hiện Tìm hiểu và phân tích quy trình tìm kiếm, mua bán sản phẩm tại các Website bán quân áo Phân tích các giải pháp của các sản phẩm tương tự trên thị trường. Xây dựng chức năng ở mức MVP (Minimum Viable Product) để đo lường tính hiệu quả.
Y nghĩa thực tiễn - Viéc tìm kiếm sản phâm ưng ý dé dang hơn cho khách hàng - _ Người quan trị có thé dé dàng quản lý các sản phẩm có trong cửa hàng 2 Hệ thống giúp khách hàng tìm kiếm và lựa chọn sản phẩm ưng ý một cách nhanh chóng và thuận tiện nhờ vào các tính năng lọc, tìm kiếm theo từ khóa, và gợi ý sản phẩm dựa trên sở thích cá nhân. Khách hàng có thê tìm thấy một địa điểm mua sắm tin cậy với các sản phẩm quần áo chất lượng cao, được kiểm duyệt và đánh giá kỹ lưỡng trước khi được bày bán. Hệ thống giúp người quản trị dé dang quản lý danh mục sản phâm, kiểm soát kho hàng, và theo đõi doanh số bán hàng. Điều này giúp tối ưu hóa quá trình kinh doanh và ra quyết định dựa trên dữ liệu thực tế.
Kết quả dự kiến Hiểu rõ các công nghệ mới: e Front- end: Tailwind , NextJs, Reactjs, Ant Design. e Back — end: NodeJS, Postgres, MongoDB, Cloudinary, ASP.NET core 7, hệ thống gợi ý. e Web3: Ethereum, solidity, sepolia, openzepplin, ERC-721. Hoàn thành sản phẩm với các chức năng đã được trình bày: e Giao diện người dùng: Hoàn thiện giao diện người dùng với thiết kế đẹp mắt, dễ sử dụng và thân thiện.
Giao diện sẽ bao gồm các trang như trang chủ, trang danh mục sản phâm, trang chi tiết sản phẩm, giỏ hàng, và thanh toán. e Chức năng mua sam: Cung cap các chức năng mua sam cơ bản như thêm sản phẩm vào giỏ hàng, thanh toán trực tuyến, và theo dõi đơn hàng. Hỗ trợ nhiều phương thức thanh toán e Giao diện thân thiện và tạo ra được những giá trị của mục tiêu. Chương 2: CƠ SỞ LY THUYET Ở chương này chúng em trình bày sơ lược về lý thuyết các công nghệ được sử dụng trong khoá luận.
Mỗi công nghệ sẽ được giới thiệu ngắn gọn, bao gồm phần giới thiệu, các đặc trưng và lý do chọn công nghệ đó. Giới thiệu IPFS (InterPlanetary File System) là một giao thức va mạng lưới phân tan dùng để lưu trữ và chia sẻ đữ liệu trong một hệ thống tập tin ngang hàng (peer-to-peer). IPFS được thiết kế để làm cho mạng Internet trở nên phi tập trung hơn và chống lại sự kiểm duyệt. Các đặc trưng Phân tán: Dữ liệu được lưu trữ trên nhiều nút mạng, giúp tăng cường khả năng chống lại các cuộc tấn công và giảm tải trên các máy chủ trung tâm.
Không thay đổi: Một khi dữ liệu được thêm vào IPFS, nó không thé bị thay đôi, dam bao tính toàn vẹn của dữ liệu. Dia chỉ nội dung (Content Addressing): IPFS sử dụng hàm băm mật mã để tạo ra các địa chỉ duy nhất cho các tập tin, thay vì sử dụng địa chỉ IP. Điều này giúp tìm kiếm và xác thực dữ liệu nhanh chóng. Hiệu quả: Hệ thống này tiết kiệm băng thông bằng cách lưu trữ và phân phối các tập tin theo cách phi tập trung, giảm thiêu sự trùng lặp đữ liệu 2.
Lý do chọn Chống kiểm duyệt: Do dữ liệu được lưu trữ trên nhiều nút mạng, IPFS khó bị kiểm duyệt hoặc ngăn chặn bởi bat kỳ tô chức hay chính phủ nào. Kha năng mở rộng: Mạng IPFS có thé dé dang mở rộng và xử lý khối lượng dữ liệu lớn mà không cần các cơ sở hạ tầng máy chủ trung tâm lớn. Tính bên vững: Dữ liệu trên IPFS có thể được truy cập và duy trì lâu dài, ngay cả khi các nguồn ban dau bi mắt. Hiệu suất cao: Do cách thức lưu trữ và phân phối dữ liệu phi tập trung, IPFS giúp tăng tốc độ truy cập và tải xuống đữ liệu so với các hệ thống truyền thống.
Bảo mật: Việc sử dụng hàm băm mật mã giúp đảm bảo tính toàn vẹn và bảo mật của dữ liệu. Hỗ trợ và tài liệu phong phú: Hỗ trợ tốt từ cộng đồng và tài liệu chỉ tiết. Giới thiệu NEXT.2: Logo NextJS Next.js là một framework phát triển ứng dụng web React với kha năng xây dựng Server-side Rendering (SSR) và Static Site Generation (SSG). Nó cung cấp một cách tiếp cận hybric rendering, cho phép lựa chọn giữa client-side rendering và server-side rendering tùy thuộc vào yêu cầu của ứng dụng.
Các đặc trưng Server-side Rendering (SSR): Next.Js cho phép xây dựng ứng dụng với khả năng render trên phía máy chủ. Khi một yêu cầu được gửi đến máy chủ, Next.js sẽ 5 thực hiện việc render trước trang và trả về nội dung HTML đã được tạo ra cho trình duyệt. Điều này giúp cải thiện khả năng tìm kiếm và trải nghiệm người dùng ban đầu. Static Site Generation (SSG): Next.js hỗ trợ xây dựng các trang tĩnh trước (pre- rendered) với nội dung được tao ra trong quá trình xây dựng ứng dụng.
Incremental Static Regeneration (ISR): Next.Js cho phép cập nhật lại các trang tĩnh đã được tạo ra trước theo một lịch trình định sẵn. Khi có yêu cầu mới, Next.Js có thé tạo lai các trang tinh chỉ trong vài giây và cung cấp nội dung mới nhất cho người dùng. Lý do chọn NextJS cho đề tài Performanee: Next.js cung cấp khả năng SSR và SSG giúp cải thiện hiệu suất và tốc độ tải trang. Trang được render trước trên phía máy chủ hoặc tạo trước dưới dạng trang tĩnh, giúp giảm thời gian phản hồi và tăng trải nghiệm người dùng.
SEO-friendly: Với khả năng SSR và SSG, Next.Js giúp cải thiện khả năng tìm kiếm của trang web. Các trang được tạo ra trước có thê chứa nội dung đầy đủ và đáng tin cậy cho các công cụ tìm kiếm. Developer Experience: Next.js cung cấp một số tính năng hữu ích như HMR và Fast Refresh giúp tăng tốc quá trình phát triển và giúp nhà phát triển dé dang xây dựng ứng dụng React phức tạp.js hỗ trợ việc xây dựng các ứng dụng có khả năng mở rộng và điều chỉnh linh hoạt. Với khả năng render trên phía máy chủ và tạo trước các trang tinh, Next.Js giúp giảm tải cho máy chủ và cho phép ứng dụng xử lý tải trong cao.
Giới thiệu EX RP ` CA 2 Hình 2.4: ExpressJS ExpressJS là một framework web nhẹ và linh hoạt dành cho Node.js, được phát triển bởi TJ Holowaychuk và phát hành lần đầu vào năm 2010. Nó được thiết kế dé xây dựng các ứng dung web và API nhanh chóng và dé dang. ExpressJS cung cap một tập hợp các tinh năng mạnh mẽ dé quản lý các yêu cầu HTTP và tạo các tuyến đường (routes) cho ứng dụng. Các đặc trưng Đơn giản và nhẹ nhàng: Cung cấp một cấu trúc đơn giản dé xây dựng ứng dụng web và API.
Middleware linh hoạt: Dễ dàng thêm các chức năng qua middleware, giúp xử lý yêu cầu và phản hồi một cách linh hoạt. Routing mạnh mẽ: Hỗ trợ hệ thống routing mạnh mẽ, giúp quản lý các tuyến đường (routes) phức tap. Hỗ trợ template engines: Dễ dàng tích hợp với các template engine như Pug, EJS dé render trang HTML. Tương thích tốt với các framework khác: Dễ dàng tích hop với các framework khác như React, Angular, và Vue.
Lý do chọn Học nhanh và dễ sử dụng: Cấu trúc đơn giản và tài liệu phong phú giúp người mới bắt đầu dé dàng nắm bat. Hiệu suất cao: Do được xây dựng trên nền tảng Node.js có khả năng xử lý lượng yêu cầu lớn một cách hiệu quả. Tính linh hoạt: Middleware linh hoạt cho phép tùy chỉnh ứng dụng theo nhu cầu cụ thé. Hỗ trợ đầy đủ cho RESTful API: Cung cấp các tinh năng mạnh mẽ dé xây dựng API RESTful, phù hợp cho các ứng dụng hiện đại.
Giới thiệu TypeScript là một ngôn ngữ lập trình mã nguồn mở phát triển bởi Microsoft. Nó là một phiên bản mở rộng của JavaScript, được thiết kế để xây dựng ứng dụng lớn, phức tạp và dé bảo trì.