Skip to content

Notes demonstrates modern Android development with Jetpack Compose, Hilt, Coroutines, Jetpack Components(Room, ViewModel,LiveData), and Material Design based on MVVM clean architecture.

License

Notifications You must be signed in to change notification settings

shamim-emon/Notes

Repository files navigation

Notes

Notes demonstrates modern Android development with Jetpack Compose, Hilt, Coroutines, Jetpack Components (Room, ViewModel,LiveData), and Material Design based on MVVM clean architecture.

License API


Tech stack & Open-source libraries

  • Minimum SDK level 24
  • Kotlin
  • Jetpack Compose: Jetpack Compose is Android’s recommended modern toolkit for building native UI.
  • Coroutines: A coroutine is a concurrency design pattern that you can use on Android to simplify code that executes asynchronously.
  • ViewModel: Manages UI-related data holder and lifecycle aware. Allows data to survive configuration changes such as screen rotations.
  • Room: Constructs Database by providing an abstraction layer over SQLite to allow fluent database access.
  • Hilt: for dependency injection.
  • Navigation Component : The Navigation component provides support for Jetpack Compose applications.
  • Junit(Unit Test) : A simple framework to write repeatable tests.
  • Mockito(Unit Test) : A mocking framework that lets you write beautiful tests with a clean & simple API.

Architecture

This app uses MVVM clean Architecture.


Testing

Local Tests are done using Junit & Mockito.


How To Contribute

At the moment this repo only have unit/local tests.Contribution in androidTest/ UITest is welcome.


License

Designed and developed by 2024 shamim-emon (Shamim Shahrier Emon)  
  
Licensed under the Apache License, Version 2.0 (the "License");  
you may not use this file except in compliance with the License.  
You may obtain a copy of the License at  
  
 http://www.apache.org/licenses/LICENSE-2.0  
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.