An android application that allows users to note down their to-do lists in an organized structure. This will help the users to remain focused on their tasks and increase their productivity.
The app has the following key features that a user can do:
- Sign up and login
- Create tasks
- Create reminders to tasks
- View tasks that are in progress
- View tasks that are done
- View profile
The app uses the MVVM architecture The app directory has two packages: ui and data.
The data package has the following sub packages:
It holds the classes that make the http network calls to the api endpoints
It contains requests that are sent to the backend.
It contains responses received from the network calls
It defines the http endpoints that need to be executed and exposes data received from the api to the ui layer.
It holds the app module class where we use hilt to inject our classes
This layer has the following sub packages:
Entry screen for the user, it checks for internet connection before proceeding to the next activity
It has the registration and login features. Each feature has a viewmodel and a fragment.
It has the following features:
- Main Activity- that displays tasks
- Bottomsheet - that allows a user to add tasks and edit tasks
It holds the users Information such as:
- Username
It allows a user to turn on notifications and change their information such as email and passwords.
All shared classes are found in the utils.
Entry point of our application
You need to allow the following permissions before running the app:
- Internet
You can check out the compiled version of the app here: appetize
Clone the project
git clone https://github.com/Ultra-Techies/tushughuli-android
Go to android studio compile and install dependencies
Run the app on your emulator or device
-
Retrofit/Gson
-
Picasso
-
HILT
-
Coroutines
-
view binding
-
Live Data
-
Jetpack DataStore
-
Mockito
- Design Screens
- Implement the screens designs
- Consume Api and populate tasks lists.
- Unit Testing
- Deploy app on appetize.io
Auto-populated from: contributors-img
Contributions are always welcome!
See contributing guidelines for ways to get started.
Please adhere to this project's code of conduct
.
- Fork it
- Create your feature branch (git checkout -b my-new-feature)
- Commit your changes (git commit -m 'Add some feature')
- Push your branch (git push origin my-new-feature)
- Create a new Pull Request
Check out the app's wiki here