Mini Amazon

Introduction

This is a scalable full-stack web application simulating Amazon where the users can browse products, buy them, and track the order. The application is implemented using Django and PostgreSQL. Here is the detailed requirements for this project:

Here is the project repository:

App Deployment

Three essential parts are needed for the complete functionality of this app.

  1. Mini Amazon (this application itself)

  2. Mini UPS (implemented by other teams)

  3. World (a warehouse system under the world_simulator_exec directory)

App Features

Login/Sign up

The user is able to login to the Mini Amazon store or sign up for a new account. Django authentication is used to ensure security and robustness of the web application.

Search and Filter

Users have the convenience of searching for various product categories available in the web store, such as gloves, enhancing their browsing experience. Additionally, a user-friendly categories dropdown feature allows for effortless filtering of desired items, ensuring a seamless shopping experience.

Place Orders

The user can buy products by placing an order where they specify their address (a Cartesian coordinate), product, product count, and their email. Once the order is placed, a confirmation email will be sent to the user.

Check Order Status

The user can check the status of any of their orders. The time that takes to process the orders depends on the speed of the world simulator, whose details can be read in this repo:

The status are updated according to the interactions among the three components of the app: Mini Amazon, Mini UPS, and the world simulator.

Contact

To facilitate effective communication between users and the Mini Amazon store, a user-friendly email functionality is incorporated, allowing users to easily send emails for inquiries or concerns. This feature ensures seamless interactions and fosters better customer support, enhancing overall user satisfaction.

Last updated