Inspiration

Imagine Ling, who’s been wanting to learn how to make a great latte — but she’s not quite ready to spend $500 on an espresso machine. Meanwhile, Steven has been wanting to learn tennis, though he isn’t excited about paying for lessons. Here’s the twist: Ling already loves tennis, and Steven happens to have an espresso machine he uses every morning. From a bird’s-eye view, the perfect trade becomes obvious: Ling teaches Steven tennis, and Steven teaches Ling the magic of making coffee. A fair swap, no money needed. But in everyday life, people don’t naturally get that bird’s-eye view. Matches like this rarely reveal themselves by luck alone. That’s why SkillSwap was created — to help these ideal exchanges come together effortlessly.

What it does

Our app doesn’t just match people; it supports your entire learning journey — from planning sessions to tracking growth, letting you focus on what really matters: sharing your skills and growing together.

How we built it

We used SwiftUI for all our frontend, Firebase & Firestore for data persistence, Swift Charts for data visualizations, Foundation Models for on-device LLM, EventKit & PencilKit for enhanced communication.

Challenges we ran into

  • Initial system design
  • Communications between designers and developers
  • Data dependency between different sub-teams leading to progress blockers

Accomplishments that we're proud of

  • A fully functionally app that is able to onboard any new user to the entire workflow we'd prototyped -- from finding other users, matching with them, messaging them, starting a journey with them, creating study materials, to visualizing progress.

What we learned

  • Effective communication between designers and developers
  • Importance of good coding practices
  • Utilization of various Apple frameworks we learned throughout the semester

What's next for SkillSwap

  • Clean up the codebase
  • Ask people to use the app for feedbacks

Built With

  • concurrency
  • eventkit
  • firebase
  • foundationmodels
  • paralleism
  • pencilekit
  • swift
  • swiftcharts
  • swiftui
Share this project:

Updates