Skiable
Flight search and exploration platform
THE CHALLENGE
Building a flight search platform requires handling complex search queries, fast API responses, structured data from multiple sources, and intuitive interfaces for comparing hundreds of results.
TECH STACK
Engineering Approach
High-Performance Search
Built search experience with focus on speed using Next.js and TypeScript with optimized data structures for fast filtering.
Server-Side API Integration
Developed API routes in Next.js that integrate with MongoDB to power structured search results with proper indexing.
Complex Interaction Design
Designed responsive interfaces handling multi-step forms, date ranges, passenger counts, and result comparison.
Modular Architecture
Organized codebase with reusable hooks and clear component boundaries for predictable scaling.
Key Technical Decisions
The choices that shaped the architecture and determined long-term maintainability.
Next.js API Routes
Used Next.js API routes instead of separate backend
Unified deployment and better TypeScript sharing between frontend and backend
MongoDB Aggregation
Leveraged MongoDB aggregation pipeline for search
Complex filtering and sorting operations are more efficient in database than in application code
Custom Hooks Pattern
Created reusable hooks for search state and filters
Encapsulated complex logic in testable, composable units that multiple components could use
Optimistic UI Updates
Implemented optimistic updates for search interactions
Users expect instant feedback when adjusting filters and search parameters
Challenges & Solutions
Search queries with multiple filters were taking 3+ seconds to return results
Added compound indexes in MongoDB and implemented query result caching with proper invalidation
Complex search form state was difficult to manage and debug
Created a centralized search context with TypeScript types and proper validation at each step
Users needed to compare dozens of flight options efficiently
Built sortable table view with persistent filters and comparison mode for side-by-side analysis
Outcomes & Impact
Skiable launched as a fast, intuitive flight search platform with complex filtering capabilities and responsive design across devices.
KEY TAKEAWAYS
Search interfaces are deceptively complex. What seems like a simple form hides dozens of edge cases and performance considerations.
