Built for the lovers of Amala by the lovers of Amala
Inspiration
The Amala Discovery Platform was born from a simple observation: finding authentic, quality Amala spots in Lagos shouldn't be a guessing game. As someone passionate about Nigerian cuisine, I noticed that food enthusiasts often rely on word-of-mouth or spend hours searching through fragmented online reviews to discover great local eateries.
The inspiration struck during a conversation about how technology could preserve and promote traditional Nigerian food culture. I envisioned a platform that would not only help people find amazing Amala restaurants but also celebrate the rich culinary heritage of Lagos through an intelligent, community-driven approach.
What it does
The Amala Map is an intelligent location discovery platform that revolutionizes how people find authentic Amala restaurants across Lagos, Nigeria. The platform combines cutting-edge AI technology with community-driven content to create the most comprehensive Amala restaurant directory.
Core Features:
- Interactive Google Maps Interface - Browse 38+ verified Amala locations with custom markers showing real-time open/closed status, price ranges, and ratings
- Autonomous Discovery System - AI-powered background service that automatically discovers new Amala spots from Google Places API, web sources, and social media mentions
- AI-Powered Submissions - Natural language chat interface using Google Gemini AI that extracts structured location data from conversational descriptions like "There's this amazing Amala spot near Ikeja with great pepper sauce"
- Real-time Moderation Panel - Admin dashboard with live notifications for reviewing and approving community submissions with one-click actions
- Advanced Filtering - Smart filters for open hours, price range, service type (dine-in/takeaway), and cuisine specialties
- Mobile-First Design - Responsive interface optimized for mobile discovery with touch-friendly interactions and bottom sheet navigation
- The Magic: Users can simply chat with the AI about Amala spots they know, and the system intelligently extracts location details, validates them against existing data, and queues them for community review - making it effortless to contribute to Lagos's food culture preservation.
How we built it
Architecture & Tech Stack: We built The Amala Map using a modern, scalable architecture centered around Next.js 15 with TypeScript for type safety and developer experience.
Frontend Development:
- Next.js 15 + App Router for server-side rendering and optimal performance
- Tailwind CSS + Radix UI for accessible, responsive design components
- Google Maps JavaScript API with custom marker clustering and info windows
- Real-time state management using React hooks with optimistic updates
AI Integration:
- Google Gemini Pro for natural language processing in location submissions
- Custom AI service layer that extracts structured data from conversational input
- Confidence scoring algorithm that validates AI-extracted information against known patterns
- Fallback extraction system when AI services are unavailable
Autonomous Discovery Engine:
// Multi-phase discovery process
const discoveryPhases = [
'Google Places API Search', // Primary source
'Web Scraping Analysis', // Secondary validation
'Social Media Monitoring', // Community insights
'AI Validation & Scoring' // Quality assurance
];
Database & Backend:
- Supabase PostgreSQL with real-time subscriptions for live moderation updates
- Custom database schema optimized for geospatial queries and duplicate detection
- API routes handling autonomous discovery, moderation workflows, and location management
- Environment-based configuration with graceful degradation when services are unavailable
Development Process:
- Core map interface and location display system
- AI integration and natural language submission flow
- Autonomous discovery system and moderation panel
- Production optimization, mobile responsiveness, and deployment
Challenges we ran into
- AI Hallucination & Data Accuracy Challenge: Google Gemini occasionally generated plausible but incorrect location details, creating fake restaurants that seemed real.
Solution: Implemented a multi-layer validation system:
- Cross-validation with Google Places API for address verification
- Confidence thresholds requiring 80%+ certainty before auto-approval
- Human moderation queue for all AI-generated submissions
- Similarity detection to prevent duplicate entries
- Real-time Updates Without WebSocket Complexity Challenge: Needed live moderation notifications and map updates but wanted to avoid WebSocket infrastructure complexity.
Solution: Developed an optimistic update pattern:
// Immediate UI feedback
setLocations(prev => [...prev, newLocation]);
// Background sync with rollback on failure
try {
await saveLocation(newLocation);
} catch (error) {
setLocations(prev => prev.filter(loc => loc.id !== newLocation.id));
}
- Mobile Performance with Large Datasets Challenge: Rendering 50+ map markers caused significant lag on mobile devices, especially older phones.
Solution: Implemented viewport-based clustering and lazy loading:
- Only render markers visible in current map bounds
- Cluster nearby locations when zoomed out
- Progressive loading as users pan and zoom
- Optimized marker icons using SVG data URLs
- Autonomous Discovery Reliability Challenge: Initial web scraping returned many false positives and irrelevant locations.
Solution: Built a sophisticated filtering pipeline:
- Keyword matching for Amala-specific terms in multiple languages
- Geospatial validation ensuring locations are within Lagos boundaries
- Business hours and contact information verification
- Community validation through the moderation system
- Graceful Degradation Strategy Challenge: External API failures could break the entire user experience.
Solution: Comprehensive fallback systems:
Accomplishments that we're proud of
🤖 Autonomous Discovery Success
- Built fully functional AI system that discovered 38+ real Amala locations across Lagos
- Achieved 85% accuracy in location validation with minimal false positives
- Created a self-improving system that gets better with community feedback
🚀 Production-Ready Performance
Sub-2 second page loads on mobile devices 100% responsive design working flawlessly across all screen sizes
Built With
- javascript
- next
- react
- superbase
- tailwind
Log in or sign up for Devpost to join the conversation.