-
-
Offline demo: pixel companions check a clothing need against a shared listing.
-
Buyer reviews a 6–9M jacket offer and resale pricing. Only the buyer approves; payment is simulated.
-
Flowers celebrate buyer approval and the inventory update in the offline demo. No real payment or physical handoff.
-
Visa simulation receipt: $21.60 with a saved authorization reference. No Visa API, real charge or funds transfer.
-
Nearby encounter: two families’ companions find a compatible clothing match. Offline demo with simulated location.
-
Real iMessage: a $19.20 sleep-sack offer and simulated-payment receipt received on one phone. Separate from the jacket demo.
Inspiration
- An unexpected spark: During an Uber ride from UCLA to a friend’s apartment, we passed a Lakeshore Learning Store. Its playful, dimensional images of children reminded us of a game world. A friend had also been playing Pikmin, inspiring us to imagine everyday encounters that could be both playful and useful.
- A short lifecycle, lasting value: Parents buy baby clothes knowing their children may outgrow them within months—even when the clothes are still in great condition. Reselling can help recover some of that cost, but photographing items, creating listings, finding buyers, and coordinating exchanges takes effort.
- Our “what if”: Two moms are shopping at the same store. One has clothes her baby has outgrown; the other needs that size next. What if their companions could discover the match and suggest a trade?
- Our goal: Make it easier for families to find the next home for outgrown clothes—and the next size for their growing children.
What it does
- Starts with a photo or conversation: Parents upload clothing photos in the web app or send them through a connected private iMessage conversation. AI suggests garment details, and parents confirm missing or uncertain information.
- Understands shopping needs: Parents describe the clothing they need. AI extracts explicitly stated sizes, categories, and budgets, then asks for confirmation before saving the need.
- Helps discover relevant items: The nearby encounter flow checks shared listings against confirmed needs, using size, category, budget, and fit rules to identify compatible offers.
- Presents a clear decision: The buyer reviews the garment details and listed price. Sharing a listing authorizes the seller’s side; the buyer retains final approval.
- Connects the steps: After approval, the app records the ownership update and a simulated payment receipt. Photon connects configured iMessage conversations to offers and receipt notifications.
- Adds a playful companion: Pixel pets, flowers, and sound effects give the experience personality and celebrate progress.
- Makes prototype boundaries visible: Payments are simulated; no real money moves and no Visa API is connected. The demo supports simulated locations and named demo profiles. Rack-level positioning and production account access controls remain future work.
How we built it
- Designed before implementing: We developed the idea and sketched the system architecture, then used Codex and Claude to critique assumptions and identify gaps.
- Used AI throughout development: AI coding tools helped implement the framework, cross-review code, and handle repetitive frontend work while we directed product and integration decisions.
- Started with an encounter: We first built two people meeting on a map, then connected that interaction to a useful workflow: discovering a match between one family’s available clothing and another family’s needs.
- Built the frontend in React and TypeScript: The interface combines clothing inventories, pixel companions, and a Leaflet-based map experience.
- Built substantially on Base44: Base44 hosts the application and persists garments, needs, listings, encounters, proposals, ownership histories, and feedback. Backend functions implement the trade workflow, while realtime subscriptions update the interface.
- Integrated generative AI through Base44: The
Core.InvokeLLMAPI analyzes clothing photos and extracts structured needs from messages. We validate outputs and request confirmation rather than treating every model suggestion as fact. - Connected messaging through Photon: Photon brings the companion into private iMessage conversations, connecting incoming photos and messages to the same backend used by the app.
- Separated AI interpretation from transaction rules: Application logic validates matches and approvals. Buyer approval triggers the simulated payment flow and saved ownership update.
Challenges we ran into
- Choosing a feasible platform: This was our first time building primarily for a mobile experience. We initially explored an installable native app, then realized it exceeded what we could complete in the remaining time.
- Changing direction: We shifted to a Base44-hosted web app accessible from phones, allowing us to focus on the core experience.
- Connecting messaging correctly: Registering a family in our database did not automatically connect their iMessage conversation. We had to configure Photon shared-line assignments and establish the conversation connection.
- Handling location failures: A location timeout initially pushed users into demo mode. We added clearer permission handling, retry guidance, and an explicit demo option.
- Distinguishing appearance from evidence: An in-app message mirror did not prove that an iMessage had arrived. We separated send-submission status from actual delivery verification.
Accomplishments that we're proud of
- Starting again at midnight: Within twelve hours, we explored two other ideas before finding SproutPass’s inspiration during the ride from UCLA. We did not begin implementing this direction until midnight.
- Delivering a connected prototype: We built a workflow spanning clothing inventory, confirmed needs, matching, offers, buyer approval, and ownership updates.
- Connecting conversation to action: Messages and photos can feed into the product workflow, giving the companion a practical role beyond answering questions.
- Combining utility and play: We connected an expressive pixel world to a concrete household problem.
- Finding a shared purpose: After a discouraging start, we delivered something the whole team felt excited about and proud to share.
What we learned
- Persistence can mean changing direction: Moving on from ideas that did not feel right helped us find a problem we wanted to solve together.
- Reduce repeated decisions: Once a seller has shared a listing, asking them to approve again adds friction. We simplified the flow so the buyer makes the final approval.
- Confirm what AI cannot know: Photo analysis can suggest details, but uncertain information needs confirmation. Clothing needs use explicitly stated sizes and budgets rather than inferring size from a baby’s age.
- Verify actions beyond the interface: A message accepted for sending is not proof of delivery. Our demo distinguishes submission status and requires checking physical phones before claiming receipt arrival.
- Separate testing from validation: Engineering tests and teammate feedback help improve the prototype, but they do not establish that parents want the product. That requires testing with the intended users.
What's next for SproutPass
- Put it in parents’ hands: Start with an existing preschool or neighborhood parent community. Observe whether participants can add an item, express a need, and understand an offer without coaching.
- Measure practical value: Learn whether SproutPass reduces listing effort, helps families find suitable clothes, and leads to completed handoffs. Use actual feedback to guide improvements.
- Strengthen trust: Improve authentication, per-family access controls, and consent settings before expanding beyond demo profiles.
- Connect real payments: Integrate a supported payment provider and handle payment failures and recovery before supporting real purchases.
- Explore more precise encounters: Our long-term vision is two moms shopping beside the same rack, with both choosing to enable nearby matching. Their companions could discover a compatible listing and suggest a trade. The current prototype does not support that level of location accuracy.
- Make invitations welcome: Test when and how nearby suggestions feel useful, while keeping participation optional and the purchase decision with the buyer.
Built With
- base44
- claude
- codex
- css
- leaflet.js
- photon
- react
- react-leaflet
- typescript
- vite
- zustand
Log in or sign up for Devpost to join the conversation.