Back to work

Community · Full-Stack · Live

Wildmate

A place for outdoor crews to find each other, plan the trip, and handle the logistics in one product.

Solo full-stack engineer · product through deployment

Explore the product

The pages worth opening. Each one is the live product.

The product

Wildmate is a community product for hikes, paddles, climbs, and similar trips. People discover a trip, join a crew, and coordinate permits, gear, meals, carpools, and cost.

Finding a crew

Trip discovery and crew matching across 15+ US metro hubs, with member approvals before someone is in.

Magic Paste

Paste a messy trip idea and get a structured itinerary with geocoded waypoints. Several model providers sit behind it, so a draft still comes back if one fails.

The day of the trip

Socket.io chat plus shared logistics: gear, meals, carpools, permits, and costs, on the same trip.

How I worked

  1. Made the trip the object everything hangs on: place, crew, permits, and cost.
  2. Built the React frontend and the Express and MongoDB API together, then added real-time chat on that same trip.
  3. Brought Magic Paste in after the core loop worked, with a fallback chain across model providers.

Challenges

A paragraph is not a plan

People describe a trip in a mess of notes. Turning that into waypoints and stops had to fail softly when a model or a geocoder did.

One trip, many writers

Chat, gear, and approvals all change the same trip. The product had to keep those updates about one crew, not a pile of side threads.

Shipping the whole thing

This was the first product I took from the data model through a public deploy, then changed because people used it.

What shipped

Live at wildmate.app

15+ metro hubs, real-time trip coordination, and Magic Paste AI drafting.

  • React 19
  • Node.js
  • Express
  • MongoDB
  • Socket.io
  • Vite