Inspiration

As high-school students, we constantly face the challenge of finding free resources - from leftover food at campus events to clean restrooms during late-night study sessions. We were inspired by the sharing economy and wanted to create something that helps students save money while building community connections. The idea of a "poop mode" came from countless experiences of desperately searching for clean bathrooms around campus!

What it does

Freebie Finder is an iOS app that helps users discover and share free resources in their area. Key features include:

  • Interactive Map: Real-time map showing freebies with custom pins and distance calculations
  • Community Reviews: Rate and review items, especially bathrooms with our unique cleanliness rating system
  • Smart Filtering: Filter by category, distance, and search terms
  • Poop Mode: A fun, quirky feature that filters to show only bathrooms with detailed cleanliness ratings
  • User Profiles: Track your contributions with stats for posted items, reviews, and upvotes
  • Real-time Updates: Instant synchronization across all users

How we built it

Frontend: Built entirely in SwiftUI with iOS 17+ features, utilizing modern declarative UI patterns and glassmorphism design.

Backend: Firebase Firestore for real-time database operations, Firebase Storage for image uploads, and Core Location for GPS tracking.

Architecture:

  • Models: Freebie and Review data structures with category-based organization
  • Services: FirestoreService for database operations, LocationService for GPS, ThemeManager for global state
  • Views: MapTabView (interactive maps), FeedView (card browsing), DetailView (item details), ProfileView (user stats)

Key Features:

  • Custom map annotations with real-time updates
  • Image compression and resizing for optimal storage
  • Distance-based sorting and filtering
  • Smooth animations with spring physics
  • Glassmorphism UI with translucent materials

Challenges we ran into

Map Performance: Initially, map pins were flickering during panning due to constant re-renders. We solved this by implementing a state-based annotation system that only updates when data changes.

Firebase Limitations: Base64 images exceeded Firestore field size limits. We implemented image compression and resizing before storage.

State Management: Poop mode state needed to be shared across multiple views. We created a singleton ThemeManager with reactive updates using Combine framework.

UI Consistency: Balancing the playful "poop mode" with professional design was challenging. We used subtle theming with clean, modern patterns.

Real-time Synchronization: Ensuring data consistency across users while maintaining performance required careful optimization of Firestore queries and state updates.

Accomplishments that we're proud of

  • Complete iOS App: Fully functional app with real-time features and polished UI
  • Unique Feature: The "poop mode" adds personality while solving a real problem
  • Performance: Smooth 60fps animations and sub-second data synchronization
  • Design: Modern glassmorphism UI that's both beautiful and functional
  • Community Focus: Built a platform that encourages sharing and community building
  • Technical Excellence: Clean architecture with proper separation of concerns
  • Accessibility: Full VoiceOver support and proper contrast ratios

What we learned

Technical Skills:

  • SwiftUI development with complex state management
  • Firebase integration with real-time databases
  • MapKit customization and performance optimization
  • Core Location services and distance calculations
  • Combine framework for reactive programming

Design Principles:

  • Glassmorphism and modern iOS design patterns
  • Balancing fun features with professional usability
  • Accessibility and inclusive design practices
  • Performance optimization for mobile devices

Development Process:

  • Iterative development with MVP-first approach
  • User testing and feedback integration
  • Code organization and maintainability
  • Version control and collaborative development

What's next for Freebie

Short-term:

  • Push notifications for nearby freebies
  • Enhanced search with filters for price range and item condition
  • Social features for user connections and following
  • Integration with campus event systems

Long-term:

  • Android version development
  • Machine learning for recommendation engine
  • Integration with local businesses for promotional freebies
  • Expansion to other universities and communities
  • Advanced analytics for campus resource optimization

Community Features:

  • User reputation system
  • Campus-specific customization
  • Integration with student organizations
  • Gamification with achievements and leaderboards

Built With

Share this project:

Updates