Skip to content

grishko188/Points-of-interest

Repository files navigation

Alt text

Points of interest

Gather and organize everything that matters

This application allows users to easily receive and organize shared data, such as links, text, and images. Create your points of interests easily with minimalistic interface:

  • Use wizard to automatically parse link content
  • Create your own custom categories
  • Leave a message for yourself from future. The app also allows for easy searching and filtering of stored information, making it easy to find the information you need quickly.

Current version of application is offline only. It is a work in progress. So stay tuned for future updates.

This app was created to showcase the latest technology in android development. This application is implemented entirely using Kotlin and Jetpack Compose.

APK / BUILD

APK - Debug v1.0 You can also clone project and build debug version. Note: Google Sign-In will not be fully functional in this case

Screenshots

Alt text

Architecture

This application follows the classic SOLID based clean architecture approach. This approach differs from official architecture guidance, but it is actively used by many developers. With this approach, the amount of boilerplate code increases, in favor of standardization and scalability.

Modularization

The Points of interests application follows modularization strategy know as "by layer". Note: For larger projects i would recommend using by layer and by feature strategy.

For more details about modularization: By layer or feature? Why not both?! Guide to Android app modularization

Features

In this project i tried to cover as many interesting learning cases as i could. So this section will describe interesting features and use cases, as well as used technologies

:domain

3rd party libraries:

  • Hilt for dependencies injection
  • Mockito for unit testing of UseCases

Features:

:data

3rd party libraries and technologies used:

Testing:

Features:

Learning cases:

:app (presentation layer)

3rd party libraries and technologies used:

Testing:

Learning cases:

Work in progress, please stay tuned for this section =)

License

Points of interest is distributed under the terms of the Apache License (Version 2.0). See the license for more information.