SchedTrip is an open-source trip planning app built with Laravel and Vue 3 (via Inertia).
It allows you to organize solo or group adventures using interactive maps, personalized notes, and packing lists.
- Create public or private trips
- Invite friends to view or edit your trips
- Add stops via a search bar or interactive map
- Automatic route calculation
- Set arrival and departure dates for each stop
- Add notes to each stop
- Add / Remove / Block friends
- Ability to switch languages (currently English-only)
- Handle 429 (Rate Limiting)
- Settings Page (change user info, add OpenRouteService API key)
- Refactor API calls into dedicated services
- Use composables for UI or component-related logic
- Centralize store management (avoid direct state changes in pages/components)
- Privacy Policy Page
- Terms Of Service Page
- About Page
- Packing list management (items + quantity)
- Refactor locale file structure
- Use MySQL container for CI and enable code coverage
- Frontend tests
- Add more languages
- Real-time collaboration and notifications (Websockets)
- Media support (images for trips and users)
SchedTrip is a personal project, while itβs not yet open to external contributions, I welcome feedback and bug reports to improve it.
If you find a bug or want to submit a feature idea, feel free to open an issue.
Contributions will be opened once the project reaches a more stable version.
git clone https://github.com/AxelReviron/schedtrip.git
cd schedtrip
cp .env.example .env
see compose.dev.yaml
for required vars.
docker-compose -f compose.dev.yaml up -d
docker exec app php artisan migrate
docker exec app php artisan db:seed
SchedTrip wouldn't be possible without the following great projects :
- Leaflet β for the interactive maps and marker system
- OpenRouteService β for route calculations and geolocation search