–
Python FastAPI REST API versioned under /api/v1 with a separate /admin namespace and auto-generated Swagger / OpenAPI docs.
–
AI endpoints backed by OpenRouter: generate-description writes marketing copy from listing fields, parse-search converts natural-language queries ("3 bedroom in Kiambu under 8M") into structured filters, suggest-price recommends a listing price, and a chatbot answers buyer questions grounded in real listings.
–
SQLAlchemy 2.0 models with Alembic migrations over MySQL — listings, images, admins, leads, price history, and search logs — covering both property and vehicle attributes in one schema.
–
Public endpoints for browsing, featured listings, slug lookup, similar listings, price history, and geo "nearby" search built on a geocoding service.
–
JWT-authenticated admin surface: listing CRUD, status changes, image upload/reorder/cover selection, lead inbox, and a dashboard aggregating listings, views, leads, and sales.
–
Redis caching with slowapi rate limiting, and centralised error handling with structured logging.