How sattuf/ma-rad-al-ashya works
Ma’rad is a C2C marketplace for browsing and publishing listings, communicating with sellers, and completing in-person transactions. Web and mobile clients enter through the API gateway; domain services cover accounts, listings, search, messaging, transactions, identity verification, fraud detection, moderation, and personalization. The graph also shows key internal calls visible in sampled code and the source index. Several cross-service links are documented only at the architecture level; unsampled integrations are not expanded into speculative call chains.
Main entry points: proxy.controller.ts API gateway · search.service.ts Search · transactions.service.ts Transactions · reviews.service.ts Reviews and ratings
Components 21
Client apps
- Web client
apps/web/src/app - Mobile client
apps/mobile
Marketplace
- Listings
services/listings-service/src/listings/listings.service.ts - Categories
services/listings-service/src/categories/categories.service.ts - Listing promotions
services/listings-service/src/promotions/promotions.service.ts - Search
services/search-service/src/search/search.service.ts - Search ranking
services/search-service/src/ranking/ranking.service.ts - Transactions
services/transactions-service/src/transactions/transactions.service.ts
Accounts and trust
- Authentication
services/auth-service/src/auth/auth.service.ts - User profiles
services/users-service/src/users/users.service.ts - Identity verification
services/identity-service/src/services/kyc.service.ts - Fraud detection
services/fraud-service/routers/admin.py - Reports and moderation
services/moderation-service/src/reports/reports.service.ts
Engagement
- Messaging
services/messaging-service/src/messaging/messaging.service.ts - Reviews and ratings
services/transactions-service/src/reviews/reviews.service.ts - Recommendations
services/personalization-service/app/services/recommendation_service.py - Engagement events
services/personalization-service/app/services/event_service.py
Platform services
- API gateway
services/api-gateway/src/proxy/proxy.controller.ts - PostgreSQL
- Redis
- Elasticsearch
Connections 22
- Web client → API gateway: requests API
- Mobile client → API gateway: requests API
- API gateway → Authentication: routes requests
- API gateway → Listings: routes requests
- API gateway → Search: routes requests
- API gateway → Messaging: routes requests
- API gateway → Transactions: routes requests
- API gateway → Identity verification: routes requests
- API gateway → Fraud detection: routes requests
- API gateway → Reports and moderation: routes requests
- Authentication → User profiles: uses account service
services/auth-service/src/auth/auth.service.ts - Listings → Search: indexes listings
services/search-service/src/search/search.service.ts - Search → Search ranking: gets ranking variant
services/search-service/src/search/search.service.ts - Search → Redis: reads and writes cache
services/search-service/src/search/search.service.ts - Search → Elasticsearch: queries and indexes
services/search-service/src/search/search.service.ts - Search → PostgreSQL: records click signals
services/search-service/src/search/search.service.ts - Identity verification → PostgreSQL: persists verification
- Transactions → PostgreSQL: persists transactions
- Reviews and ratings → Transactions: checks transaction
services/transactions-service/src/reviews/reviews.service.ts - Reviews and ratings → PostgreSQL: stores reviews and ratings
services/transactions-service/src/reviews/reviews.service.ts - Recommendations → Engagement events: uses event service
services/personalization-service/app/services/recommendation_service.py - Fraud detection → PostgreSQL: uses database