Inspiration

I'm a freshman at the University of Washington. When a college student meets another, at some point in their interaction, one asks for the Instagram, and one person pulls out their phone, and gives it to the other person, and the other person has to type it in their phone and give it back. This process is repeated if you ever want their SnapChat, TikTok, number, or anything else. It's a simple procedure, but really quite annoying if the conversation is in between classes, passing-by, or someone is just in a hurry. Not getting someone's Instagram or contact however, at such a big school, basically means never seeing that person ever again.

In addition, remembering the people you meet, especially at times like right now, the beginning of the school year, where I meet maybe 50-100 people a week, is especially hard for me. Even if I get their contact, I can never quite seem to remember who that person I met during Math, or that person I met during the career fair, what their name is.

What it does

My app, hi again, allows people to connect their basic connection info (Instagram, SnapChat, phone number), etc. to their student ID's NFC profile. This allows other people who have the app, at just a tap, to get all their socials instantly, and have their profile saved with the place and time they met, so they can never forget a name again.

How I built it

I used SwiftUI and XCode to build the app. It uses iOS NFC scanning to read the chip inside your Husky ID, so you link your own card once and after that anyone with the app can just tap it. The app never actually stores your card number, it turns it into a salted hash on the phone and only saves that, so nobody can copy your ID from the database. For the backend I used Supabase, with Sign in with Apple for accounts and a few database functions that handle linking a card, scanning someone, and saving the meeting with the time and place (the place comes from your phone's location). I'm building solo, so I used AI tools a lot, Claude Code to plan things out and review code and Cursor to build out a bunch of the screens, and I kept a shared plan and progress file in the repo so every tool knew what was already done. For the design I went with real "HELLO my name is" stickers and a red rubber stamp that lands on someone's sticker when you scan them, because I wanted it to feel like meeting someone in real life and not like another AI looking app.

Challenges I ran into

The biggest unknown was whether the Husky ID would even work, since it isn't made to be used like this. The first thing I tested was scanning my card a bunch of times to make sure it gave the same ID every time, because if it didn't the whole idea was dead. Then the campus Wi-Fi blocked the Supabase command line from connecting to my database, so I had to run the database setup by hand in the browser. I also found a privacy hole in my first version of the database where someone could edit their own meeting to point at a stranger and see that person's profile, so I locked it down so you can only edit your note. Tapping the same card twice was also making double meetings, so now a second scan within 2 minutes just counts as one. The hardest part honestly was figuring out what happens when you tap someone who doesn't have the app, because a Husky ID can't open a link by itself and App Clips only work once the app is on the App Store.

Accomplishments that I'm proud of

I'm proud that it actually works on a real phone with a real Husky ID, you tap someone's card and in a couple seconds their sticker drops in with the stamp of where you met. This is my first hackathon and I built the whole thing solo in a weekend, sign in, making your sticker, linking your card, scanning, and the list of everyone you've met. I'm also proud of the design, I redid it three times because the first versions looked too much like every other AI app, and the sticker and stamp look is something I actually like.

What I learned

I learned how NFC works on iPhone and what you can and can't do with it, like how you can read a card's ID but can't make a card open anything on its own. I learned a lot about writing database functions and thinking about privacy, like hashing the card number and making sure people can only see what someone puts on their own sticker. I also learned how to work with a bunch of different AI tools at once without them stepping on each other, and that keeping one shared plan file saves a lot of time. The biggest thing though was cutting features, I started with a map, voice notes, photos and events, and the app got way better when I cut it down to just the tap and the memory.

What's next for hi again

Right now the person you tap needs the app, so the next thing is letting someone claim their card without downloading anything. You'd tap their card, hand them your phone, and they make their sticker right there, or they scan a QR code and do it in Safari on their own phone, so the first time you meet someone they're already on it. I also want to add a "hi again" screen for the second time you tap someone, so it tells you their name, where you met and the note you wrote, plus search, so I can type "career fair" or "robotics" and find that person. After that I'd want to try it with clubs and orientation events at UW, and maybe put it on the App Store so App Clips can work.

Built With

Share this project:

Updates

Submission history