Skip to content

Andrij72/MicroserviceGridShopFrontEnd

Repository files navigation

๐Ÿ›๏ธ MicroserviceGridShopFrontend ๐Ÿ…ฐ๏ธ

MicroserviceGridShopFrontend is the frontend application of the Microservice Grid ecosystem.
This Angular-based client communicates with the API Gateway and backend microservices to deliver a modular and scalable shopping interface.

Admin Panel for E-Commerce Platform

Angular TypeScript Docker Microservices Spring

Admin panel for managing products, orders and users.
Built with Angular 20 and designed to work with a microservice backend architecture.


๐Ÿš€ Features

  • Product catalog fetched from Product Service
  • Inventory availability from Inventory Service
  • OrderService creation through OrderService Service
  • Secure integration via API Gateway
  • Angular 20 standalone architecture
  • Modular structure prepared for future expansion (Cart, Auth, Payments, Admin Panel)

๐Ÿ› ๏ธ Tech Stack

  • Angular 20
  • TypeScript
  • RxJS
  • Angular Router
  • SCSS
  • REST communication through API Gateway
  • Docker-ready production build

๐Ÿ“ฆ Project Structure

src/
  app/
    core/
      auth/
        auth.config.ts
        auth.interceptor.ts
      header/
        header.component.html
        header.component.scss
        header.component.ts
    order/
      data-access/
        cart.service.ts
        order.service.ts
      feature-cart/
        cart.component.html
        cart.component.scss
        cart.component.ts
      feature-orders/
        orders.component.html
        orders.component.scss
        orders.component.ts
      model/
        cart-item.model.ts
        order-create.request.ts
        order.model.ts
    product/
      data-access/
        admin-product.service.ts
      feature-list/
        product-list.component.html
        product-list.component.scss
        product-list.component.ts
      feature-details/
        product-details.component.html
        product-details.component.scss
        product-details.component.ts
      model/
        admin-product.model.ts
    pages/
      admin/
      home/

๐Ÿ”Œ API Integration

Endpoint Method Description
/api/v1/products GET Fetch all products
/api/v1/inventory GET Check stock availability
/api/v1/orders POST Create order

Order Payload Example

{
  "items": [
    {
      "sku": "iphone-15",
      "productName": "iPhone 15",
      "price": 999,
      "quantity": 1
    }
  ],
  "userDetails": {
    "email": "[email protected]",
    "firstName": "John",
    "lastName": "Doe"
  }
}

๐Ÿ“ˆ User Flow / Architecture Diagram

flowchart TD
    User -->|Interacts with| Frontend[Angular Frontend - Products Cart Orders]
    Frontend -->|Calls API| Gateway[API Gateway]

    subgraph Microservices["Microservice Grid"]
        Product[Product Service]
        Inventory[Inventory Service]
        Order[Order Service]
    end
    
    Gateway --> Product
    Gateway --> Inventory
    Gateway --> Order
Loading

๐Ÿ“ธ Screenshots

Home

Home

Login

Login

Client Dashboard

List products

Product details

List products

Client Cart

Client Cart

Create order

Create Order

Admin Dashboard

Product List (Grid View)

Products

Product Edit Form

Edit Product

Create new Product Form

Edit Product


โš™๏ธ Development Setup

1. Install dependencies

npm install
  1. Start the development server
ng serve

Open in browser:

http://localhost:4200/ Hot-reload works automatically.

๐Ÿงฑ Production Build

ng build --configuration production

The build output will be generated inside the:

dist/microservice-grid-shop-frontend/

You can serve it using Nginx, Docker, or any static hosting.


๐Ÿงช Code Scaffolding

Generate new components:

ng generate component component-name

View all available schematics:

ng generate --help

๐Ÿ”Œ API Integration

All backend communication goes through the API Gateway:

Endpoint Description /api/v1/products Product catalog /api/v1/inventory Inventory check /api/v1/order Create order

Environment config:

src/environments/environment.ts

๐Ÿงฐ Docker Build (optional)

docker build -t microservice-grid-frontend .
docker run -p 4200:80 microservice-grid-frontend

๐Ÿ”ฎ Planned Features

  • Keycloak Authentication (Login / Register)

  • User profile & session handling

  • Shopping cart & checkout page

  • Payment interaction via Pay Service

  • Admin Dashboard (Products, Inventory, Orders)

  • Weather & Currency integration widgets


๐Ÿ‘ค Author

Andrii Kulynch Part of the Microservice Grid distributed system.

About

๐Ÿ›๏ธ MicroserviceGridShopFrontend Angular-based frontend of the MicroserviceGrid ecosystem. Fully developed by me, integrates with API Gateway and backend microservices. Modular, scalable shopping interface demonstrating full-stack skills.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors