BuzzTrip supports real-time multi-user collaboration powered by Convex. Every change a collaborator makes — adding a marker, drawing a path, editing a label — is pushed instantly to all other connected users on the same map. There is no need to refresh the page or manually sync data.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/jacobsamo/buzztrip/llms.txt
Use this file to discover all available pages before exploring further.
Visibility Levels
Map visibility controls who can discover and access your map. Set it when creating the map or update it at any time from the map settings.Private
Only the owner and explicitly invited collaborators can access the map. It does not appear in any public listings or search results.
Public
Viewable by anyone. The map is indexable and searchable by other BuzzTrip users. Any user can duplicate a public map to their own account.
Unlisted
Accessible to anyone who holds the direct link, but not discoverable through search or public listings. Ideal for sharing with specific people without making the map fully public.
Permission Roles
Every user added to a map is assigned one of four roles from thepermissionEnum:
| Role | Update Map | Manage Content | Delete Map | Add/Update Users | Remove Users |
|---|---|---|---|---|---|
| owner | ✅ | ✅ | ✅ | ✅ | ✅ |
| editor | ✅ | ✅ | ❌ | ✅ | ❌ |
| viewer | ❌ | ❌ | ❌ | ❌ | ❌ |
| commenter | ❌ | ❌ | ❌ | ❌ | ❌ |
Detailed role permissions
Detailed role permissions
Owner
- Inherits all editor permissions
- Can delete the map itself (
maps:delete) - Can remove any collaborator (
map_users:delete)
- Can update map metadata (
maps:update) - Can add new collaborators (
map_users:create) and update their permission level (map_users:update) - Cannot remove collaborators — the
map_users:deletepermission is not granted to editors - Can create, update, and delete: markers, collections, collection links, labels, paths, routes, route stops
- No write permissions. Cannot create, edit, or delete any content.
- No write permissions. The commenter role currently has no additional capabilities beyond read access.
Inviting Collaborators
Use theshareMap mutation to add users to a map:
Choose a permission level
Select
editor, viewer, or commenter for the new collaborator. The owner role is reserved for the map creator.Editing a Collaborator’s Role
To change a collaborator’s permission level, calleditMapUser with the map_user record ID and the new permission value. Only the permission field is updated — no other map user data is changed.
Removing a Collaborator
CalldeleteMapUser with the map ID and the map_user record ID to remove a collaborator’s access entirely. After removal, the user can no longer view or edit the map (unless it is public or unlisted and they have the link).
Real-Time Updates
BuzzTrip’s backend is built on Convex, a reactive database that maintains persistent WebSocket connections to all active clients. When any collaborator performs a mutation — adding a marker, editing a path, updating map metadata — Convex re-runs the affected queries and pushes the new data to every connected client on that map in real time. This means:- No polling — updates arrive via push, not periodic fetches
- No page refresh needed — the UI reflects the latest state automatically
- Conflict-free — each mutation runs transactionally on the server
Duplicating Public Maps
Any authenticated BuzzTrip user can duplicate a map that hasvisibility: "public" set. The duplicateMap function creates a full independent copy under the duplicating user’s account, including all markers, collections, collection links, paths, labels, routes, and route stops. The copy starts with the title Copy of <original title> and the duplicating user becomes the owner.