Wasanii
This a simple events app that focuses on arts and culture. Due to my interest in the arts, I decided to create an app that would help people to find events and venues around the city(Nairobi).
It solves a problem for me in that I've always had a challenge trying to find events in the art space e.g. Art Exhibitions, Jazz Events, etc. I hope it solves the same problem I've had with others out there in search of similar events. Wasanii is swahili for "Artists" and I think it's a good name for the app.
Table Of Content
- General Preview
- Architecture
- Installation
- Dependencies
- Resources
- To Do List
- Contributors
- Contributing
- License
General Preview
More designs coming soon...
Architecture
The app uses the MVVM architecture: A comprehensive architecture design is still WIP.
Installation
- Clone the project
git clone https://github.com/malcolmmaima/Wasanii.git
-
Go to android studio compile and install dependencies
-
Run the app on your emulator or device
Dependencies
- Hilt - Dependency Injection library.
- Jetpack
- Android KTX - Provide concise, idiomatic Kotlin to Jetpack and Android platform APIs.
- AndroidX - Major improvement to the original Android Support Library, which is no longer maintained.
- Lifecycle - Perform actions in response to a change in the lifecycle status of another component, such as activities and fragments.
- LiveData - Lifecycle-aware, meaning it respects the lifecycle of other app components, such as activities, fragments, or services.
- ViewModel - Designed to store and manage UI-related data in a lifecycle conscious way. The ViewModel class allows data to survive configuration changes such as screen rotations.
- Navigation Component-Component that allows easier implementation of navigation from simple button clicks to more complex patterns.
- Retrofit - Type-safe http client and supports coroutines out of the box.
- GSON - JSON Parser,used to parse requests on the data layer for Entities and understands Kotlin non-nullable and default parameters.
- OkHttp-Logging-Interceptor - Logs HTTP request and response data.
- Coroutines - Library support for kotlin coroutines.
- Picasso - Image-loading android library .
- DataStore - Storage of key-value pairs
- Mockito -
Resources
To Do List
- Design Screens
- Implement the screens designs
- Consume Api and populate events lists.
- Unit Testing
- Deploy app on Playstore
Contributors
Auto-populated from:contrib.rocks
Contributing
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 and set
dev
as the base branch