Harishma-M /
Amazon-basics
A responsive Amazon-inspired e-commerce frontend built using HTML, CSS, and JavaScript featuring a modern homepage, navigation bar, product sections, and shopping interface.
59/100 healthLoading repository data…
Kushonwork / repository
Modern Amazon-inspired e-commerce web application built with Angular 22, TypeScript, Angular Material, Signals, RxJS, and JSON Server, featuring authentication, product browsing, cart management, checkout, and responsive UI.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
A modern full-stack Amazon-inspired e-commerce web application built using Angular 22, TypeScript, Angular Material, Angular Signals, RxJS, and JSON Server.
The project recreates the core shopping experience of Amazon while focusing on modern Angular architecture, reusable components, reactive state management, authentication flow, cart management, checkout processing, and responsive UI design.
This project was developed as a practical implementation of modern Angular concepts and full-stack application architecture.
You Can Access This project on: https://amazon-clone-angular-22.vercel.app/
The Amazon Clone is a feature-rich Single Page Application (SPA) that demonstrates how a modern e-commerce frontend can be structured using Angular.
The application allows users to:
The project follows a feature-based architecture with standalone Angular components and service-based state management.
Example route:
/products/:id
Unauthenticated users attempting protected actions are redirected to the login page.
| Technology | Purpose |
|---|---|
| Angular 22 | Frontend framework |
| TypeScript | Application programming language |
| HTML5 | Application structure |
| CSS3 | Styling and responsive layouts |
| Angular Material | UI components |
| Angular Signals | Reactive state management |
| RxJS | Asynchronous data handling |
| Angular Router | Client-side navigation |
| Angular Reactive Forms | Form management and validation |
| HttpClient | Backend API communication |
| JSON Server | Development REST API |
| Git | Version control |
| GitHub | Source code hosting |
The project follows a:
Feature-Based Monolithic SPA Architecture with Standalone Components and Service-Oriented State Management.
The primary application flow is:
User Interface
│
▼
Angular Components
│
▼
Angular Services
│
├──────────────► Angular Signals
│
└──────────────► HttpClient
│
▼
JSON Server API
The architecture separates:
src/
│
├── app/
│ │
│ ├── core/
│ │ │
│ │ ├── api/
│ │ │ └── api.config.ts
│ │ │
│ │ ├── guards/
│ │ │ └── auth-guard.ts
│ │ │
│ │ ├── interceptors/
│ │ │
│ │ └── services/
│ │ ├── auth.ts
│ │ ├── cart.ts
│ │ └── product.ts
│ │
│ ├── features/
│ │ │
│ │ ├── auth/
│ │ │ └── pages/
│ │ │ ├── login/
│ │ │ └── register/
│ │ │
│ │ ├── cart/
│ │ │ ├── components/
│ │ │ │ ├── cart-item/
│ │ │ │ └── cart-summary/
│ │ │ │
│ │ │ └── pages/
│ │ │ └── cart/
│ │ │
│ │ ├── checkout/
│ │ │ └── pages/
│ │ │ └── checkout/
│ │ │
│ │ ├── home/
│ │ │ ├── components/
│ │ │ │ ├── banner/
│ │ │ │ ├── product-card/
│ │ │ │ └── product-grid/
│ │ │ │
│ │ │ └── pages/
│ │ │ └── home/
│ │ │
│ │ └── products/
│ │ └── pages/
│ │ └── product-details/
│ │
│ ├── layouts/
│ │ ├── footer/
│ │ └── header/
│ │
│ ├── models/
│ │ ├── cart-item.ts
│ │ ├── order.ts
│ │ ├── product.ts
│ │ └── user.ts
│ │
│ ├── shared/
│ │ └── components/
│ │ ├── hero-slider/
│ │ └── shopping-cards/
│ │
│ ├── app.config.ts
│ ├── app.routes.ts
│ └── app.ts
│
├── main.ts
└── styles.css
This project demonstrates practical implementation of several modern Angular concepts.
The application uses Angular's modern standalone component architecture instead of traditional NgModules.
@Component({
selector: 'app-product-grid',
standalone: true,
imports: [
ProductCard
],
templateUrl: './product-grid.html',
styleUrl: './product-grid.css'
})
export class ProductGrid {
products = input.required<Product[]>();
}
Angular's inject() API is used to access services.
private productService = inject(ProductService);
private cartService = inject(CartService);
private router = inject(Router);
Signals are used for reactive application state.
private cartItems = signal<CartItem[]>([]);
readonly cart = this.cartItems.asReadonly();
Derived state can be calculated using computed signals.
totalPrice = computed(() =>
this.cartItems().reduce(
(total, item) =>
total + item.product.price * item.quantity,
0
)
);
Modern Angular signal inputs are used for component communication.
products = input.required<Product[]>();
Parent component:
<app-product-grid
[products]="products">
</app-product-grid>
The project uses Angular's modern template control flow.
@for (product of products(); track product.id) {
<app-product-card
[product]="product">
</app-product-card>
}
Conditional rendering:
@if (placingOrder) {
Placing your order...
} @else {
Place your order
}
Dynamic product routes are implemented using route parameters.
{
path: 'products/:id',
loadComponent: () =>
import(
'./features/products/pages/product-details/product-details'
).then(component => component.ProductDetails)
}
Standalone components are lazy loaded using:
loadComponent()
This improves application loading performance by loading feature code only when required.
The checkout process uses Angular Reactive Forms.
<form [formGroup]="addressForm">
Form controls:
<input
type="text"
formControlName="fullName">
Authentication guards prevent unauthorized access to protected routes.
Navigation Request
│
▼
Authentication Guard
│
▼
Is User Authenticated?
/ \
/ \
Yes No
│ │
▼ ▼
Continue Redirect
to Login
The primary data flow follows:
JSON Server
│
▼
HttpClient
│
▼
Angular Service
│
▼
Observable / Signal
│
▼
Angular Component
│
▼
HTML Template
│
▼
User Interaction
│
▼
Service Method
│
▼
State Mutation
│
▼
Automatic UI Update
User clicks Add to Cart
│
▼
Authentication Check
│
┌──┴──┐
│ │
Logged In Not Logged In
│ │
▼ ▼
CartService Login Page
│
▼
Check Existing Product
│
┌──┴──┐
│ │
Existing New
│ │
▼ ▼
Increase Add Product
Quantity
│ │
└──┬──┘
▼
Update Signal State
│
▼
Automatic UI Update
│
├── Header Cart Count
├── Cart Page
└── Checkout Summary
The development backend uses JSON Server.
| Method | Endpoint | Purpose |
|---|---|---|
| GET | /products | Retrieve products |
| GET | /products/:id | Retrieve individual product |
| POST | /products | Create product |
| GET | /users | Retrieve users |
| POST | /users | Register user |
| GET | /cart | Retrieve cart |
| POST | /cart | Add cart item |
| PATCH | /cart/:id | Update cart item |
| DELETE | /cart/:id | Remove cart item |
| GET | /orders | Retrieve orders |
| POST | /orders | Create order |
Make sure the following software is installed:
Check your installed versions:
node --version
npm --version
ng version
git --version
git clone YOUR_REPOSITORY_URL
Navigate into the project:
cd amazon-clone-22
npm install
The application uses db.json as its development database.
Start JSON Server:
npx json-server db.json
The API will run at:
http://localhost:3000
Example products endpoint:
http://localhost:3000/products
Open another terminal and run:
ng serve
If Angular CLI is not globally available:
npx ng serve
Open the application in your browser:
http://localhost:4200
Generate a production build using:
ng build
The optimized application files will be generated inside the Angular bui
Selected from shared topics, language and repository description—not editorial ratings.
Harishma-M /
A responsive Amazon-inspired e-commerce frontend built using HTML, CSS, and JavaScript featuring a modern homepage, navigation bar, product sections, and shopping interface.
59/100 healthRiyachanne-2310 /
An Amazon-inspired e-commerce website clone built using HTML, CSS, and JavaScript. The project replicates the core user interface and shopping experience of Amazon, featuring a responsive design, product listings, navigation bar, search functionality, shopping cart interactions, and modern UI components.
49/100 healthninja-codeee /
Sheryqains Mart 🛒 | Amazon Clone Web App A full-stack Amazon-inspired e-commerce web application built using React, Redux Toolkit, Tailwind CSS, and json-server. Includes user authentication, product listing, cart functionality, and order handling – all packed into a sleek and modern UI. ⚙️ Tech Stack Frontend:
adweitmanwatkar /
A modern Amazon-inspired e-commerce website built using HTML and CSS.
59/100 healthShashwat162004 /
This Amazon-inspired front-end clone is built with HTML, CSS. It includes all key sections of a modern e-commerce website
27/100 healthDadir-Dev /
A modern, Amazon-inspired e-commerce web application built with vanilla JavaScript and Tailwind CSS.
48/100 health