An Android Application build for online writers to keep track of their orders. It can be thought of as a diary for recording orders. It would serve writers across all categories: article writers, blog writers, technical writers, academic writers and any other user who would find the app useful. You can use the app as a writer or as a client or even both
- ✨
MVVM architecture
- Helps to write clean, structured, organized and easily testable codeRoom Database
- For data storage and persistenceViewModel
- Stores and manages UI-related data in a lifecycle conscious way. It also allows data to survive configuration changes such as screen rotations.Repository
- Handle data operations. provides a clean API so that the rest of the app can retrieve this data easilyLiveData
&Flow
- these patterns facilitate live updates in the app
- ✨
Dagger Hilt
- A dependency injection library for Android that reduces the boilerplate of doing manual dependency injection in your project - ✨
CardView Layout
- Gives views a card-like interface - ✨
RecyclerViews
- for efficient display of large lists of dataListAdapter
DiffUtil
- calculates the difference between two lists to efficiently update a list displayed by RecyclerView.
- ✨
Coroutines
- Helps to manage long-running tasks that might otherwise block the main thread and cause your app to become unresponsive - ✨
Fragments
- Provides reusable portions of the App's UI - ✨
DataBinding
- allows you to bind UI components in your layouts to data sources in your app using a declarative format rather than programmatically. - ✨
BindingAdapters
- Responsible for making the appropriate framework calls to set values t o views ... - ✨
Navigation Component
- Helps to implement navigation, from simple button clicks to more complex patterns, such as app bars and the navigation drawer *Safeargs - passing data between fragments - ✨ [Google Truth Library][16] - for writing assertion during testing
:--: | :--: | :--: |
Copyright 2021 Samuel Juma
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.