TopLAN is a mobile application for the Google Solution Challenge that helps with natural disaster coordination and mutual aid
TopLAN.Demo.mp4
Splash | Welcome | Sign Up |
---|---|---|
Home | Report Options | Report |
---|---|---|
Chat | Feed | News |
---|---|---|
Profile | Edit Profile | Settings |
---|---|---|
SOS Call | Marker | Contact Us |
---|---|---|
- Open Android Studio in your computer, if you don't have download from that link
- When opened Android Studio, click on the "File" menu and select "New" > "Project from Version Control" > "Git".
- In the "Git Repository URL" field, enter the link of the project. Link: https://github.com/meetOzan/TopLAN
- Click on the "Clone" button.
- Android Studio will clone the repository and open it in a new project.
- When repository clonned and loaded, click Launch button.
- Log in when the application opens, create a user if you do not have an account, of course you can also log in as a guest.
- After that, you can use and examine TopLAN
- Minimum SDK level 23
- Only Kotlin based
- Android Architecture Components
- Compose Navigation to manage composable transactions.
- Lifecycle - unique lifecycle in Jetpack Compose
- ViewModel - Stores UI-related data that isn't destroyed on UI changes.
- Repository - Located in data layer that contains application data and business logic.
- Jetpack Compose - is Android’s next generation and recommended modern toolkit for building native UI with declaritive style. It makes development UI simpler and more understandable on Android.
- Android Hilt for dependency injection.
- DeepLink to navigate another application.
- Language Localication to language localization.
- Coroutines for async. operations.
- Firebase Firestore to user save operations.
- Firebase Auth. to authtentication structure.
- Firebase Cloud Storage to uploading images.
- Firebase Crashlytics to crash management and monitoring.
- Coil Compose to load image what comes from API.
- Material Design 3 is the latest version of Google’s open-source design system.
- Google Maps API is an API that enables the use of the map feature
- Gemini AI is Google's new artificial intelligence model
Firstly open app/src/main file path, and you will see;
- common package -> Constants, Enum and ResponseState classes and mapper functions.
- components package -> All base, custom components and side components what we used in all project.
- data package -> Where we make requests to the backend and get a response. It contains Model, RepositoryImpl and SourceImpl classes.
- domain package -> That was a optional package. Where we prepare, responsed data to the UI layer. It contains Repository and Source interfaces.
- navigation package -> Where navigation operations are controlled. It contains screen Destinations file and NavGraph class.
- presentation package -> View layer of project, it contains the screens of the project and their components, viewmodels and functions.
- ui/theme package -> The package what contains Theme, Color and Type. The default package created when the project is created.
This app uses MVVM (Model View View-Model) architecture structure.
Click the image to access to Google Drive link of the presentation. 🙂
Click to watch our demo YouTube video! 🎬
Follow Me! for other projects!
Designed and developed by 2024 meetOzan (Mert Ozan Kahraman)
Licensed under the MIT License (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
https://opensource.org/licenses/MIT
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.