How washingmachine55/kikomilano works
Kikomilano is an Express e-commerce API. Clients authenticate or register, browse products, manage profiles, addresses and favorites, create orders, then initiate Stripe payments; password recovery adds OTP email verification. The graph shows the documented major capabilities and sampled call paths. Some controller and route implementations were not sampled, so their internal wiring is omitted; the tree also lacks migration and category-service details beyond their listed paths.
Main entry points: app.js Express app · payments.controller.js Payment handlers · db.js PostgreSQL · auth.controller.js Auth handlers
Components 25
API entry
- Express app
src/app.js - HTTP server
src/server.js - Auth routes
src/routes/auth.routes.js - User routes
src/routes/users.routes.js - Product routes
src/routes/products.routes.js - Order routes
src/routes/orders.routes.js - Payment routes
src/routes/payments.routes.js - Stripe webhook
src/routes/webhook.routes.js - Input validation
src/middlewares/globalInputVerification.js
Identity
- Auth handlers
src/controllers/auth.controller.js - Auth services
src/services/auth - Token verification
src/middlewares/verifyToken.auth.js
Catalog and users
- User handlers
src/controllers/users.controller.js - User services
src/services/users - Product handlers
src/controllers/products.controller.js - Product services
src/services/products - Category lookup
src/services/categories/getAll.categories.service.js
Orders and payments
- Order handlers
src/controllers/orders.controller.js - Order services
src/services/orders/orders.service.js - Payment handlers
src/controllers/payments.controller.js - Payment records
src/services/payments/payments.service.js
Data and integrations
- PostgreSQL
src/config/db.js - Stripe
- Email transport
src/config/mailTransporter.js
Other components
- API client
Connections 30
- API client → Express app: sends requests
- HTTP server → Express app: serves
- Express app → Auth routes: mounts
- Express app → User routes: mounts
- Express app → Product routes: mounts
- Express app → Order routes: mounts
- Express app → Payment routes: mounts
- Express app → Stripe webhook: mounts
- Express app → Token verification: applies
- Express app → Input validation: applies
- Auth routes → Auth handlers: dispatches
- User routes → User handlers: dispatches
- Product routes → Product handlers: dispatches
- Auth handlers → Auth services: invokes
- Auth handlers → Email transport: sends recovery email
- User handlers → User services: invokes
- Product handlers → Product services: invokes
- Product handlers → Category lookup: invokes
- Order routes → Order handlers: dispatches
- Payment routes → Payment handlers: dispatches
- Order handlers → Order services: invokes
- Payment handlers → Order services: loads order
- Payment handlers → Stripe: creates intent
- Payment handlers → Payment records: saves payment
- Stripe webhook → Payment handlers: dispatches events
- Auth services → PostgreSQL: queries
- User services → PostgreSQL: reads and writes
- Product services → PostgreSQL: queries
- Order services → PostgreSQL: reads and writes
- Payment records → PostgreSQL: persists records