** A mobile application where users can quickly and efficiently check documentation against travel restrictions imposed on the passenger by the authorities in the transit or destination country. App crosschecks documentation against travel restrictions imposed on the passenger by the authorities in the transit or destination country. Consequent to inputing relevant travel information, app shall return the specific set of regulations, for designated destination for the relevant users. **
** A mobile application where users can quickly and efficiently check documentation against travel restrictions imposed on the passenger by the authorities in the transit or destination country. App crosschecks documentation against travel restrictions imposed on the passenger by the authorities in the transit or destination country. Consequent to inputing relevant travel information, app shall return the specific set of regulations, for designated destination for the relevant users. **
This project is for everyone, easiest way to see worldwide restrictions
- Splash Screen
- Intro pages (for first time run)
about page
- Home Page for navigation ->
click fab
-> (if logged to user page else login/signup page) - Login and SignUp Page
- User Page with user infromation and travel plans
- Travel Plan page with restrictions -> to create, edit, delete and see travel plans details with its left days
- Restriction -> to search restrictions, if user is logged it gives one detailed infromation about restrictions with their vaccine and nationalities.
Home Page | Restriction Form | Restriction Result | Travel Plan Form | Travel Plan Result |
---|---|---|---|---|
User Home Page | About Form | Login | Sign Up | Splash Screen |
---|---|---|---|---|
No Internet |
---|
- Tech-stack
- 100% Kotlin + Coroutines + Flow - perform background operations
- Dagger2 - Dependency Injection lib with large community support.
- Retrofit - Network Http Client
- Jetpack
- Navigation - in-app navigation
- Flow
- ViewModel - store and manage UI-related data in a lifecycle conscious way
- Lottie - animation library
- okhttp-logging-interceptor - logs HTTP request and response data.
- Moshi - Data, Model & Entity JSON Parser that understands Kotlin non-nullable and default parameters
- Paging 3 - Load and display paged data
- Splash Screen - Splash screen with theme and animations
- SharedPreferences - For first time intro pages and for saving user info
- ViewPager2 - Swipe views allow you to navigate between tabs (Movies, Series), intro pages and for trailers
- extensions - to add methods to class without inheriting a class or using any type of design pattern.
- Modern Architecture
- Clean Architecture (at feature module level)
- Single activity architecture using Navigation component
- MVVM (presentation layer)
- Dynamic feature modules
- Android Architecture components (ViewModel,
- Navigation)
- UI
- Gradle
- Gradle Kotlin DSL
- Custom tasks
- Plugins (SafeArgs, android-junit5)
The full list of dependencies are written in the build.gradle files.
There are a few ways to open this project.
Android Studio
->File
->New
->From Version control
->Git
- Enter
https://github.com/annzzu/AZ.git
into URL field an pressClone
button
- Run
git clone https://github.com/annzzu/AZ.git
command to clone project - Open
Android Studio
and selectFile | Open...
from the menu. Select cloned directory and pressOpen
button
API in gradle.properties
SERVER_URL=http://covid-restrictions-api.noxtton.com/
- AZMovie - AZMovie - For for watching movies and series without any ads.
- AZ Light - AZLight - AZLight is a small android app for connecting esp8266 to turn on and off lights.
If you have any questions about this projects, please contact me directly at