work

about

resume

other

Dylan Tang's Logo

Work

About

Resume

Collage

TrailMix

Less arguing, more adventuring on road trips.

GitHub →

ROLE

Developer

TIMELINE

Fall 2023

FRONTEND

React

Chakra-UI

BACKEND

Node.js + Express

MongoDB

FLASK

Image of the TrailMix Platform project

TrailMix Case Study: Making Road Trips Spontaneous Again

Introduction

Road trips are meant to be spontaneous, freeing, and fun—but they often turn into logistical nightmares. From coordinating routes to finding places to eat and stay, trip planning becomes a source of stress, arguments, and time-consuming micromanagement. TrailMix was born from this pain point: we wanted to bring back the joy of discovery and minimize the overhead of planning.

I worked on TrailMix with a team of developers and designers at LA Hacks, contributing as a backend developer and product manager across research, ideation, feature prioritization, and technical execution.

Target Users

Casual travelers and friend groups who want to go on road trips with a personalized, budget-friendly plan—without spending hours researching.

Our Goal

To design and build a web app that automates road trip planning by generating complete itineraries based on user preferences, using AI agents and APIs.

User Research

We interviewed 10 students and young professionals who had recently gone on or were planning road trips. Our goals were to identify:

  • Key pain points in road trip planning
  • What tools they were currently using
  • Where conflicts typically arose among travelers

Key Themes

  • Decision fatigue around where to stop, eat, or stay
  • Budgeting as a recurring stressor
  • Conflict when preferences (e.g. scenery vs speed) didn’t align
  • Overplanning vs. underplanning: users wanted flexibility, but also assurance that major logistics were covered

Experience Map

We created an experience map to visualize user actions and emotions throughout the planning and traveling process:

  • Decide to take a trip — Excited
  • Open Google Maps/Notes/Spreadsheets — Overwhelmed
  • Research places to stop — Tiring
  • Budget for food/lodging — Stressful
  • Get into arguments with friends — Frustrating
  • Finally hit the road — Relieved
  • Detour or miss stop — Regretful

🟨 = Positive, 🟪 = Negative

The most emotionally charged moments were clearly in the planning phase, particularly around step 3–5.

Market Research

Tools We Looked At:

  • Google Maps: great for directions, but poor for itinerary organization
  • Roadtrippers: strong itinerary tools but limited free usage and poor UX
  • Spreadsheets/Notes: widely used, but manual, inflexible, and prone to versioning issues

Most tools were either too rigid or too open-ended. None integrated user preferences, budgets, and location APIs in a cohesive, automated way.

Technical Approach

TrailMix is built with a MERN stack and a supplemental Flask backend to integrate AI tools:

  • Frontend: React + Chakra-UI for accessible, modular components
  • Backend: Node.js + Express + MongoDB to store users and trips
  • AI & APIs:
    • Google Gemini for smart itinerary generation
    • Fetch.ai UAgents to dynamically call Yelp and Google Maps APIs
    • JWT authentication to keep dashboards secure and personal

Challenges

Fetch.ai Integration

We initially planned to use traditional RESTful calls. However, integrating autonomous agents required pivoting mid-build to a Python layer. We had to re-architect how API requests and async responses were handled, which delayed progress but strengthened the design.

Gemini Prompt Engineering

Fine-tuning prompt templates for optimal results took multiple iterations. We struggled with balancing creativity (unique, scenic stops) and precision (budget, route time). We eventually split prompts into modular segments to improve stability.

Accomplishments

  • Fully working client–server model built and deployed within the first few hours
  • First-time integration with Fetch.ai and Gemini completed successfully
  • Hand-drawn UI elements and modular architecture that enhanced UX
  • Shareable trip dashboard feature enabled real-time collaboration

What We Learned

  • How to collaborate across multiple backend environments (Node and Flask)
  • Hands-on experience with agent-based API calls via Fetch.ai
  • Better understanding of prompt design and token limits with LLMs
  • How emotional triggers (e.g. arguments or FOMO) shape feature design

What’s Next

  • Let users swap out recommended activities and re-generate a tailored itinerary
  • Integrate real-time data: gas prices, traffic conditions, and local events
  • Add filtering by pacing, food preferences, and detour willingness
  • Refine collaborative features for group input and voting

“TrailMix: Less arguing, more adventuring.”

questions? feel free to send me a message!

:)

(: