49 lines
1.5 KiB
Markdown
49 lines
1.5 KiB
Markdown
# rTrips — Trip Planning
|
|
|
|
**Module ID:** `rtrips`
|
|
**Domain:** `rtrips.online`
|
|
**Version:** 0.1.0
|
|
**Framework:** Next.js 14 / React 18 / Prisma / PostgreSQL
|
|
**Status:** Active
|
|
|
|
## Purpose
|
|
|
|
Collaborative trip planning with itineraries, packing lists, shared expenses, and location-based scheduling. Integrates with rMaps for destination visualization and rFunds for expense splitting.
|
|
|
|
## Data Model
|
|
|
|
Prisma schema (PostgreSQL). Trips, itineraries, destinations, packing lists, expenses.
|
|
|
|
## Permission Model
|
|
|
|
| Capability | Required SpaceRole | Description |
|
|
|-----------|-------------------|-------------|
|
|
| `view_trips` | VIEWER | See trip details and itineraries |
|
|
| `create_trip` | PARTICIPANT | Create new trips |
|
|
| `edit_own_trips` | PARTICIPANT | Modify trips you created |
|
|
| `moderate_trips` | MODERATOR | Edit/manage any trip |
|
|
| `configure_trips` | ADMIN | Space-level trip settings |
|
|
|
|
**Current Auth:** EncryptID via SDK.
|
|
|
|
## Canvas Integration
|
|
|
|
Shape types:
|
|
- **`folk-itinerary`**: Trip timeline with dates and destinations
|
|
- **`folk-packing-list`**: Checklist widget
|
|
- **`folk-destination`**: Location card linked to rMaps
|
|
|
|
## Cross-Module Dependencies
|
|
|
|
| Module | Integration |
|
|
|--------|------------|
|
|
| **rMaps** | Destination markers on map |
|
|
| **rFunds** | Expense splitting and budget tracking |
|
|
| **rSpace** | Canvas shape embedding |
|
|
|
|
## Migration Plan
|
|
|
|
1. Already has EncryptID auth
|
|
2. Add space-level role resolution
|
|
3. Import `resolveSpaceRole()` + capability checks
|