Getting Started
Welcome to Reisetagebuch, a travel diary application built with Laravel and Vue.js.
What is Reisetagebuch?
Reisetagebuch (German for "travel diary") is a web application that allows users to document their travel experiences. It uses Transitous / motis for real-time public transport data and OpenStreetMap for single locations.
Users can create different types of posts:
- Base Posts: Simple text-based entries
- Location Posts: Posts tied to specific geographic locations
- Transport Posts: Posts documenting journeys and transportation
Posts can also be synchronized with Träwelling.
Reisetagebuch also federates over ActivityPub: people on other Fediverse servers can follow your profile and like your posts. See the ActivityPub extensions page for the federation-specific data format, and the REST API documentation for the full HTTP API that powers the web, iOS and Android clients.
You can get an overview of all planned features in the repository's issue tracker.
WARNING
Reisetagebuch is still in very early stages of development. While basic functionality is in place, many features are still being worked on.
I'm trying my best to keep it stable, but expect occasional bugs and breaking changes. Back up your data regularly!
Quick Start
- Install the application
- Configure your environment
- Start developing or deploying
Architecture
The application uses:
- Backend: Laravel (PHP), exposing a REST API documented with OpenAPI
- Frontend: Vue.js SPA with Vue Router, talking to the backend purely over the REST API
- Database: PostgreSQL with PostGIS
- Maps: MapLibre GL
- Styling: Tailwind CSS with DaisyUI
- Queues/Scheduling: Laravel Horizon and the Laravel scheduler, each running as their own process/service
- Mobile apps: the same SPA, built standalone and wrapped for iOS/Android with Capacitor — see Mobile Apps