Mackie
Android architecture component sample with MVVM design pattern, data binding, dagger hilt, navigation component, Kotlin coroutine with liveData, Room for Database management and hardware integration.
Install / Use
/learn @Ayodeji97/MackieREADME
Mackie App
Mackie App is a music application that display a list of trending artist song and also a list of recommended songs to users.
This is a custom application built and reviewed by Udacity Android Nanodegree Programme expert.
Mackie Application is under development. Note: Mackie Application is built only for learning and sharing lastest android development
Feature
- Kotlin Coroutine for async operations
- liveData an observable data holder class for lifecycle-aware task
- Dagger Hilt for dependency injection
- Databinding to bind UI layout to data model
- Retrofit library to had interaction with external api
- Room libray for local caching of data
- Shared preference for user session storage
- Custom firebase authentication
- Glide an image loader library for imaging loading optimisation
- Camera hardware integration
Get Started
As this is an android project, you will need an android device to run the application Instruction to run the project
-
Download and install lastest android studio on your device.
- Here is the link to download the lastest version of android studio
-
Clone the project repository by running the following command line on a terminal
git clone https://github.com/Ayodeji97/Mackie.git -
Open project in android studio by clicking of File -> New -> Import project and choose the downloaded project
-
You will need an Api Key to run the app
- Get an api key from this link
-
Store you api key in
gradle.propertiesfile -
Run the app
Libraries
- Kotlin Coroutine
- Room Database
- LiveData
- Retrofit 2
- DataBinding
- ViewMOdel
- Gson
- Glide
- Androidx
- Navigation componenet
- Dagger Hilt
- Timber
- OkHttp3
- Navigation Componenet
- CameraX
Screen Shots
<p float="left"> <img src="app/src/main/res/drawable/sign_up.png" width="150" /> <img src="app/src/main/res/drawable/login.png" width="150" /> <img src="app/src/main/res/drawable/home_screen.png" width="150" /> <img src="app/src/main/res/drawable/detail.png" width="150" /> </p> <p float="left"> <img src="app/src/main/res/drawable/empty_playlist.png" width="150" /> <img src="app/src/main/res/drawable/search_song.png" width="150" /> <img src="app/src/main/res/drawable/auto_search.png" width="150" /> <img src="app/src/main/res/drawable/search_result.png" width="150" /> </p> <p float="left"> <img src="app/src/main/res/drawable/web_view.png" width="150"/> <img src="app/src/main/res/drawable/choose_pix.png" width="150" /> <img src="app/src/main/res/drawable/permission.png" width="150" /> <img src="app/src/main/res/drawable/image_upload.png" width="150" /> </p>Author
Daniel Ayodeji
Code Of Coduct
Kindly take some time to go through the app code of coduct to help in healthy contribution to this project - see : Code of Conduct
License
This project is licensed under the Apache License 2.0 - see : licence
Related Skills
feishu-drive
349.2k|
things-mac
349.2kManage Things 3 via the `things` CLI on macOS (add/update projects+todos via URL scheme; read/search/list from the local Things database)
clawhub
349.2kUse the ClawHub CLI to search, install, update, and publish agent skills from clawhub.com
codebase-memory-mcp
1.2kHigh-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 66 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.
