Managed Search Platform with Feedback System

A Django application integrating Google Custom Search API with real-time content filtering and bidirectional user feedback workflows.
Problem Statement
Building a search proxy requires handling API rate limits, implementing multi-layer filtering logic, and managing complex parent-child user relationships with different permission levels. The architecture must support real-time filtering of API responses, maintain search history with privacy controls, and implement a feedback system where restricted users can appeal filtering decisions.
Engineering Strategy
I architected a Django application that acts as a middleware layer between users and the Google Custom Search API. The system implements request throttling and response caching through Redis to optimize API quota usage. I designed a multi-tier filtering pipeline that processes search results through keyword matching, pattern recognition, and configurable rulesets stored in PostgreSQL. The user model implements role-based permissions with parent-child account linking and audit logging of all search activity.
Technical Solution
The platform operates as a search proxy with three filtering layers: pre-query validation, API response filtering, and post-processing content analysis. Parent accounts access an administrative dashboard built with Django templates and vanilla JavaScript, providing real-time visibility into search activity through WebSocket updates. The feedback system uses a notification queue where child requests trigger parent approval workflows with email alerts.
Production Results
Deployed a production system handling 1000+ searches monthly with 99% uptime. The Redis caching strategy reduced API costs by 40% through intelligent result reuse. The multi-layer filtering architecture achieved 95% accuracy in content classification while maintaining sub-500ms response times. Successfully demonstrated complex API integration, real-time filtering, and sophisticated user permission management.
Gallery & System Views


