What this dossier contains
Six documents, one system
Each document is self-contained and print-ready. Together they describe the full product โ from the screens a shopper sees, to the Node.js services that fan out to five platforms and rank the results, to the cross-platform basket QuickCart fulfils as a single order.
DOCUMENT 01
UI Mockups โ Home, List & Detail
High-fidelity phone mockups of the three core screens, annotated with the data each element is bound to.
DOCUMENT 02
User Flow (Mermaid)
Rendered flow diagrams: discovery โ compare โ checkout โ track, including the missing-SKU capture loop.
DOCUMENT 03
System Architecture
How the mobile app talks to the Node backend and database; catalogue management, missing-SKU discovery, analytics and payments.
DOCUMENT 04
MCP Integrations
Every platform MCP (Blinkit, Zepto, BigBasket, Flipkart, Amazon), the tools each exposes, and exactly how far we can use them.
DOCUMENT 05
Price & Availability Engine
How the backend gathers, normalises and ranks best price, stock and ETA across sources โ with the algorithm and code.
DOCUMENT 06
Orders & Delivery
One cross-platform basket โ one internal order: procurement split across sources, saga orchestration, and last-mile delivery.
CROSS-CUTTING
Analytics & Payments
Event model, KPI dashboards and the payment/settlement flow live inside the Architecture document.
The idea in one picture
flowchart LR
U["๐ฑ Shopper
searches a product"] --> API["QuickCart API
(Node.js)"] API --> AGG{{"Aggregation
Engine"}} AGG --> M1["Blinkit MCP"] AGG --> M2["Zepto MCP"] AGG --> M3["BigBasket MCP"] AGG --> M4["Flipkart MCP"] AGG --> M5["Amazon MCP"] M1 & M2 & M3 & M4 & M5 --> NORM["Normalise +
match SKU"] NORM --> RANK["Rank by price,
stock & ETA"] RANK --> U2["๐ Best option
shown to shopper"] NORM -. unmatched .-> GAP[("Missing-SKU
queue")] GAP --> CAT[("Catalogue")]
searches a product"] --> API["QuickCart API
(Node.js)"] API --> AGG{{"Aggregation
Engine"}} AGG --> M1["Blinkit MCP"] AGG --> M2["Zepto MCP"] AGG --> M3["BigBasket MCP"] AGG --> M4["Flipkart MCP"] AGG --> M5["Amazon MCP"] M1 & M2 & M3 & M4 & M5 --> NORM["Normalise +
match SKU"] NORM --> RANK["Rank by price,
stock & ETA"] RANK --> U2["๐ Best option
shown to shopper"] NORM -. unmatched .-> GAP[("Missing-SKU
queue")] GAP --> CAT[("Catalogue")]
Figure 0.1 โ QuickCart at a glance: one query fans out to five platform MCPs, results are normalised, matched and ranked, and gaps feed catalogue growth.
Snapshot targets
5
Source platforms
<1.5s
Search p95 latency
10 min
Median delivery ETA
98%
SKU match coverage goal
Targets are design goals for v1, not measured production numbers.
How to read this dossier
Open any document from the top navigation. Every page is styled for both screen and print โ use
convert-to-pdf.sh (or your browser's Print โ Save as PDF) to export a pixel-accurate PDF with all diagrams and charts baked in.