Inspiration

Pareidolia, the human tendency to perceive familiar patterns, particularly faces, in random or ambiguous stimuli. Research shows that moments of pareidolia can spark positive emotions like joy and curiosity. These small but meaningful emotional boosts can have a real impact on mental well-being. We wanted to create something that encourages people, especially those moving through moments of emotional heaviness or creative stillness, to explore the world around them through a more playful, mindful lens. By giving users a platform to capture, share, and track their pareidolia discoveries, we hope to promote outdoor engagement, creative thinking, and moments of instant positivity. The experience itself is therapeutic, helping users reconnect with their environment, imagination, and sense of curiosity.

What it does

SmileySpot creates a fun, interactive platform where users can explore, capture, and celebrate pareidolia. After logging into their personalized dashboard, users are greeted with a dynamic map showing all the places they’ve previously spotted pareidolia, turning their experiences into a visual memory archive. Each “smiley” they upload is pinned to the location where it was discovered, creating a spatial diary of whimsical encounters with the world. To make the experience even more engaging, users earn points for every face they find. This subtle layer of gamification encourages curiosity and continued exploration, rewarding users for venturing outside and noticing the unnoticed. The point system fosters a sense of progress, turning each moment of perception into a small victory. Whether you’re walking through your neighborhood or traveling somewhere new, the app transforms the world into a playful canvas—one where the mundane smiles back.

How we built it

Frontend:

  • Next.js – React framework for building the UI and routing
  • TypeScript – For type safety and better developer experience
  • Tailwind CSS – Utility-first CSS framework for styling
  • React Leaflet – For rendering interactive maps
  • Google Places API – For address autocomplete and geocoding

Backend:

  • Next.js API Routes – handle authentications, database operations
  • Gemini API (Google) – For AI-based smile/facial resemblance scoring

Database:

  • MongoDB Atlas – Cloud-hosted database for storing user accounts, pins, and scores
  • MongoDB Node.js Driver – To interact with MongoDB in API routes

Deployment:

  • Vercel – Hosting platform for both frontend and backend

Challenges we ran into

One of the most challenging parts of building this app was developing a reliable way to score how much an object resembled a face—a key part of gamifying the pareidolia experience. We started by experimenting with the “Faces in Things” library, which initially seemed promising but lacked the flexibility we needed for nuanced control and consistent results. The scoring felt binary or brittle, and it didn’t support our criteria for excluding real human faces, animals, or drawn illustrations. After running into these limitations, we shifted to Google’s Gemini API, which allowed us to iterate on prompts and fine-tune a system that could return a continuous score from 0 to 10 based on how strongly a given image evoked a face. This process involved a lot of iterative prompt engineering, testing edge cases, and tweaking constraints to ensure the model was scoring with both precision and the playful spirit of the app.

Accomplishments that we're proud of

We’re most proud of bringing such a unique and emotionally-driven idea to life within a short time span. The concept of mapping pareidolia—seeing faces in everyday objects—posed both creative and technical challenges, and we leaned into both. Along the way, we pushed ourselves to work with unfamiliar tools and technologies: from deploying a full-stack app on Vercel, to storing structured user data with MongoDB, to using Gemini for iterative prompt engineering and image scoring.

What we learned

  • How to structure a full-stack app using Next.js, MongoDB, and Vercel for seamless deployment
  • How to debug and integrate APIs like Google Maps and Places Autocomplete to create a more immersive user experience

What's next for SmileySpot

We envision evolving this app from a personal archive into a shared, community-driven experience. In future versions, we’d love to introduce:

  1. A public pareidolia map — a collective archive where everyone’s smiley discoveries appear, allowing users to explore the whimsical faces others have spotted around the world

  2. Location-based exploration — imagine walking through a city and seeing nearby pareidolia pins others have left behind, turning everyday walks into playful scavenger hunts

  3. Leaderboards and point systems — to gamify the experience further, we plan to add global and local rankings based on smile scores, encouraging friendly competition and engagement

Ultimately, we want this project to become a breathing map of wonder—part game, part gallery.

Built With

Share this project:

Updates