Native android application built on top of https://islamqa.org/.
View Demo
·
Report Bug
·
Request Feature
.
Project Management
Table of Contents
Native Android Application built with latest Android OS features. Just a frontend for IslamQA.org.
IslamQA.org is a repository of Islamic answers. They have collected over 93,950 Islamic Q&A from the official websites of various scholars and Islamic educational institutions around the world. You can find answers to your questions from different school of thoughts (madaahib) from the Sunni scholarship. So far, they have collected around 87,000 answers from Hanafi Fiqh, around 5,700 answers from Shafi’i Fiqh, around 270 answers from Maliki Fiqh, and around 280 answers from the Hanbali fiqh.
This app just scrapes this awesome website in the user-end, and shows the answers based on the preferred 'Madhab' of the user. Once loaded, it caches the data, to reduce load on the original website. This app incorporates latest Material You themeing, Clean Architecture recommended by Google, Kotlin Coroutines for multithreading and Work Manager for background syncing to give an immersive experience to the user.
Major frameworks this application is built around.
- Android SDK
- Kotlin Coroutines, for multithreading.
- skrape.it, for web scraping.
This app needs no extra credential as it has no internal API or Firebase connection.
- Android Studio Chipmunk (Download link)
- Java-OpenJDK 11+
- For macOS
brew install openjdk@11
- For Windows
choco install openjdk11
- For Linux
pacman -S jdk11-openjdk
- For macOS
- Android SDK Version 32
- Clone the repo
git clone https://github.com/kabirnayeem99/islam_qa_org_android.git
- Build the project
./gradlew build
- Load Random questions in a slider
- Load Fiqh-based questions in the home page
- Load Answers with the relevant question list.
- Offline first designs with background syncing.
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE.txt
for more information.
Naimul Kabir - @kabirnayeem99 - kabirnayeem.99@gmail.com