This diploma thesis deals with the development of a mobile application that provides users with an interface for group travel planning. The web service communicates with the mobile application using the REST architectural style and ensures the actual functionality of organizing and managing trips. In this work, the author describes step by step the various stages of development of both parts β the backend and the mobile application. The author also covers the design and implementation of user authentication accomplished by refreshing JWT tokens in this work. The output of this diploma thesis is a functional and user-tested mobile application that allows organizing trips in a group.
Wanderscope is a mobile app that allows organizing trips with other travelers. Wanderscope will create an itinerary according to your plans, help you with splitting group expenses and save your travel documents.
- Login with email and password, change password, and forgot password features
- Authorization using rotating JWT tokens (access and refresh tokens)
- Invite to trip other travellers with custom permissions
- Upload and download files (encrypted and may be key-protected)
- Create or join trips, add points of interests
- Search places with Google autocomplete
- Show places on Google Map
- Notifications
- Splitting group expenses
- History of changes
- Google authentication
- Share a trip with a link
- Offline access
Kotlin β RecyclerView with ListAdapter β ViewPager2 β Jetpack Datastore β Encrypted SharedPreferences β Retrofit with Authenticator and Interceptors β Koin for DI β Jetpack DataBinding β Jetpack Navigation Component β MVVM β LiveData, MediatorLiveData, Transformations β Kotlin Coroutines β Kotlin Flow β Moshi β Google Places SDK β Google Maps SDK β Firebase Crashlytics and Timber β Material Design 2
Download the project and replace your own MAPS_API_KEY
in local.properties
.
Made by Jan Steuer
Ilustrations by @pch.vector