Canal is an Amazon clone project. The project focuses on replicating key features of the Amazon platform, such as browsing and searching for products, adding items to the cart, and completing the checkout process. By emulating the functionality and design of Amazon, Canal aims to provide users with a familiar and intuitive shopping experience.
- Browse and search for products across different categories.
- View detailed information about each product, including images, descriptions, and pricing.
- Add products to the cart and adjust the quantity.
- Manage user accounts, including login and registration.
- Leave reviews on products they've purchased.
Canal utilizes the following technologies, libraries, and APIs:
- Rails: The backend of the project is built using Ruby on Rails, providing a robust and scalable server-side framework.
- React: The frontend of the application is developed using React, a popular JavaScript library for building user interfaces.
- Redux: Redux is used for state management in the application, providing a centralized store for managing data and enabling predictable state updates.
- React Router: React Router is used for routing and navigation between different pages in the application, allowing for a smooth and seamless user experience.
- AWS: Amazon Web Services (AWS) is utilized for various functionalities, such as cloud storage (Amazon S3) for storing product images and other assets, as well as deployment and hosting options (Amazon EC2 or AWS Amplify).
- Have sign-in, sign-out, and sign-up
- Error handling for invalid sign-in and sign-up
- Make demo user option
- Add header
- Have home page display randomly selected products
- On product click will display product page
- Add items to shopping cart
- Can edit amount in the cart
- Can remove items from cart
- Can checkout only if logged in
- List of reviews from users
- Shows rating of product
- Can only add review if purchased and logged in
- Have to leave rating and written review
- Can not delete just edit review
- Be able to search for products and category
- Enhance the search functionality with advanced filtering options.
- Improve the overall performance and loading speed of the application.
- Enhance the search functionality with advanced filtering options.
