How sahniaditya007/shopify-integration works
This repository implements a Shopify data-ingestion service and a customer/revenue dashboard. An operator requests ingestion; the backend fetches products, customers, and orders from Shopify and upserts them with store data into the database. The dashboard fetches aggregate metrics from the backend and displays revenue, order and customer counts, and top customers. The sampled server source supports these flows; the README documents no additional capabilities.
Main entry points: server.js Ingestion Endpoint · App.js Dashboard UI · schema.prisma Customer Records · index.js React Entry
Components 11
Dashboard
- Dashboard UI
frontend/src/App.js - React Entry
frontend/src/index.js
Backend API
- Ingestion Endpoint
backend/server.js - Shopify REST Client
backend/server.js - Metrics Endpoint
backend/server.js
Persisted Data
- Store Record
backend/prisma/schema.prisma - Product Records
backend/prisma/schema.prisma - Customer Records
backend/prisma/schema.prisma - Order Records
backend/prisma/schema.prisma
Other components
- Operator
- Shopify Store
Connections 13
- React Entry → Dashboard UI: renders
- Operator → Dashboard UI: views
- Dashboard UI → Metrics Endpoint: requests metrics
- Metrics Endpoint → Customer Records: counts and ranks
- Metrics Endpoint → Order Records: counts and totals
- Metrics Endpoint → Dashboard UI: returns metrics
- Operator → Ingestion Endpoint: requests ingestion
- Ingestion Endpoint → Store Record: upserts store
- Ingestion Endpoint → Shopify REST Client: creates client
- Shopify REST Client → Shopify Store: fetches records
- Ingestion Endpoint → Product Records: upserts products
- Ingestion Endpoint → Customer Records: upserts customers
- Ingestion Endpoint → Order Records: upserts orders