Parth Mangrola

Full-stack engineer · Open to new roles



Beacon

A shared workspace for planning trips together. Started as an Expo app on Convex, now one Cloudflare Worker serving iOS, the web, and AI agents over MCP.

v2 · Beacon · Aug 2026 – now

Off Convex and onto Cloudflare. One Effect Worker on D1 serves the iOS app, a new web app, and any AI agent you connect over MCP.

what changed

v1 ran on Convex. v2 moved every workflow onto a single Cloudflare Worker, one at a time: auth, trips, itineraries, places, tags, currency, weather, and invites. each one was cut over behind an acceptance gate before the Convex version was retired.

the rewrite also added two new clients: a web app, and agents.

features

  • shared trips with roles: each trip has an Owner, Members who can edit the plan, and Viewers who can only read
  • invites: an invite link opens a read-only preview of the trip before you even have an account, then joins you after you sign in
  • itineraries and home bases: an ordered plan per trip, with date-ranged lodging so each day knows where you’re staying
  • places: search through Apple Maps and Google, save places for yourself, or add them to a trip
  • weather and currency: forecasts for each destination, and a searchable currency converter
  • guide import: an agent reads a travel guide and pulls out the places, and you review them before anything is saved
  • web app: a browser client with invite previews and Sign in with Apple

agent access

you can connect an agent like Claude or ChatGPT to Beacon over MCP. it signs in with OAuth and can only touch the trips you pick.

every tool has a policy: allow, require approval, or block. when an agent calls a tool that needs approval, Beacon sends you to an approval page and waits. every call is logged with what was decided and why, and you can revoke a connection at any time.

tech stack

  • Expo + React Native: iOS app with Expo Router and Uniwind, shipped to TestFlight on every push to main
  • TanStack Start: the web app
  • Cloudflare Workers + D1: one API Worker with Drizzle over D1
  • Effect v4: services, errors, and the D1 layer on the Worker
  • Better Auth: Sign in with Apple, plus OAuth for agents
  • Agents SDK + AI Gateway: guide import with Gemini
  • TanStack Query + Jotai: client state
  • Alchemy: defines the Cloudflare resources and runs local dev on Miniflare
  • Turborepo + Bun + Ultracite: monorepo tooling