find/ — AI App Search + Contract Lead Generation
Combines two functions in one mobile app: AI search to quickly discover existing apps, and, when nothing matches, a wish-posting flow that turns into developer quotes and contract-development leads.
Duration
Mid-term development
Team
1-2 people
01 // OVERVIEW
Project Overview
A mobile app that solves the "I can't find the app I want" problem along two axes: natural-language AI search (Gemini) to discover existing apps, and, when nothing is found, a wish-posting flow where developers respond with quotes, generating contract-development leads. Built as an Expo SDK 52 / React Native monorepo, with a Node.js + Prisma + MySQL backend.
02 // KEY FEATURES
Key Features
Natural-Language AI App Search (SSE Streaming)
SSE-streamed search powered by Gemini 2.5 Flash provides a 3-step real-time search experience, letting users search for apps using natural sentences instead of keywords.
Wish Posting to Developer Quotes
If a search comes up empty, users can post a wish. Developers browse the wish list to find projects and submit formal quotes, which become contract-development leads directly.
Multilingual Support, Notifications, and Apple/Google Sign-In
Implements Japanese/English support via i18next, push notifications via Expo Notifications, and Apple/Google OAuth authentication. Also supports upvoting, commenting, and posting images on wishes.
03 // TECHNICAL DEEP-DIVE
Technical Highlights
Solution
Maintaining Type-Check Consistency Across All Workspaces
Managed three workspaces - Mobile, Server, and Shared - in a pnpm workspaces monorepo. Zod schemas serve as the single source of truth for request/response types, with CI detecting any type mismatches between workspaces.
Solution
Apple/Google Authentication and Expo Go Constraints
Because native modules like expo-apple-authentication aren't supported in Expo Go, we set up a development flow built around EAS dev client builds. Also implemented a synchronous fallback for cases where the SSE connection drops mid-stream.
04 // IMPACT & RESULTS
Results
2 axes
Search discovery and wish-to-contract leads combined
JA/EN support
Multilingual UI implemented with i18next
21 routes
Backend API endpoints