-
-
The login page where users can login/sign in using their gmail-id, to get verified either enter college mail or upload college-id
-
This is the onboarding page and profile page, where new users have to enter their details to proceed further, it can be updated anytime.
-
This is the Bio page where users can see their info, they can also change their travelling time even for a single day for temporary changes
-
This is the search page, to find users either traveling to same college(same destination) or via similar routes, it also has some filters
-
This is the friends page where the user can see the coming requests and their friend list.
Inspiration
I got the inspiration for this project during my first few days of college. I had to travel for more than an hour on the metro alone. Not knowing anyone, the daily commute quickly became tedious. I started noticing students from my college posting on anonymous confession pages, desperately looking for travel buddies for their routes. However, nobody ever replied. The problem was trust: people hesitated to share their contact details on an anonymous public forum due to privacy concerns. I realized there was a massive demand for a platform where students could freely find commute buddies without compromising their safety, so I decided to build it.
What it does
My Metro Mates is a secure Progressive Web App (PWA) that connects people who share the same metro routes. It solves the "stranger danger" paradox by utilizing a tiered verification system. Users can find peers whose travel times and routes align with theirs, but sensitive data is hidden from unverified users. It creates a safe networking environment by displaying verified college badges and utilizing "Social Vetting," where Instagram IDs or WhatsApp numbers are securely shared in connection requests so users can verify legitimate peers before accepting.
How we built it
As I was already on my journey to becoming a Full-Stack Web Developer, I used this real-world problem as a catalyst to push my skills. I built the application using Next.js (App Router) for a highly responsive, server-rendered frontend, styled with Tailwind CSS. For the backend, I utilized Next.js Server Actions to securely communicate with a MongoDB database, ensuring tight data masking. Finally, I integrated Clerk to handle secure user authentication and session management.
Challenges we ran into
The biggest challenge was designing the verification system. I was uncertain how to make the platform highly accessible to grow the user base, while simultaneously keeping it safe for students. If I made it too strict, no one would use it; if I made it too open, it wouldn't be safe. I solved this by engineering a Role-Based Access Control (RBAC) badge system. Users who log in with a recognized college email, or upload a valid Student ID, receive a "Verified" badge and full access. Guest users can still use the app, but their access to exact travel times and live statuses is strictly locked.
Accomplishments that we're proud of
I am incredibly proud that this is a completely ready-to-launch production application with a robust, scalable verification architecture. Instead of just a prototype, it is a fully functioning PWA that already has real users. I am also proud of how the UI turned out—it genuinely feels like a native mobile app rather than just a website..
What we learned
I learned that you should never be afraid to start building, even when you feel like you aren't "ready" or don't know the whole tech stack yet. Once you start a project with a clear goal in mind, the path automatically starts to become clearer. Building this taught me more about database architecture, security routing, and real-world problem-solving than any tutorial ever could.
What's next for My Metro Mates
On the technical side, I plan on implementing a real-time chat system for connected friends using WebSockets. On the product side, the scope for this routing algorithm is massive. I plan on expanding the platform to include dedicated environments for office workers and corporate hubs. Eventually, the core matching engine could be generalized to help anyone find verified travel companions for any type of trip, not just daily metro commutes.
Built With
- clerk
- mongodb
- nextjs
- node.js
- react
- tailwind
- typescript
- vercel
Log in or sign up for Devpost to join the conversation.