Deen - An Islamic App
Overview
Deen is a comprehensive Islamic application developed using Flutter, designed to serve the diverse needs of the Muslim community. The app provides essential Islamic features and tools to help users in their daily religious practices.
Key Features
- Prayer times calculation and notifications
- Quran recitation with multiple reciters
- Qibla direction finder
- Islamic calendar
- Mosque finder using Google Maps API
- User-friendly interface with Islamic design elements
Technical Details
- Framework: Flutter
- APIs: Google Maps API
- Technologies: Dart, Firebase
- Duration: Oct 2023 – Dec 2023
Project Highlights
- Successfully integrated multiple Islamic features in a single application
- Implemented accurate prayer time calculations
- Created an intuitive mosque finder feature
- Designed a user-friendly interface with Islamic aesthetics
- Optimized for performance and user experience
Project Documentation
Below is the README content from the GitHub repository:
DEEN - An Islamic App
It's an Islamic application that contains quran, hadees, azkar.</b>.
Design & Developed in Flutter.
Installation steps
Open CMD where you want to clone the project & run the following commands
git clone https://github.com/ashrafulparan2/Deen.git
cd Deen
flutter pub get
flutter run
Splash Screen
Splash screens provide a simple initial experience while Android app loads. They set the stage of an application, while allowing time for the app engine to load the application. Our app also includes a splash screen. Through splash screen users can anticipate a smooth transition, setting the stage for an optimal and engaging app experience.
Once the first splash screen finishes, a nice-looking second one comes up, adding a bit of flair before quickly switching to the home page in just one second.
Home Page
Users can easily access all critical features through the homepage’s integrated design. A countdown at the top of the page indicates when the next prayer time is. The collection portion exhibits numerous application functionalities.
If we scroll this page hadees of the day and image of the day will be shown. The respective references of hadees and image is also given.
Quran Page
In this page the Holy Quran is illustrated. The page has two section which is Surah and Juz. User can read Surah and also, they can read according to Juz.
After clicking on any surah, the details of that specific surah will be displayed in the next page.
Zakat Calculator
In this page zakat calculator was implemented. There are three text boxes in this page for taking input from user. From total saving, total loan and total gold amount the amount of zakat was calculated in taka. If total amount of asset crosses the amount of nisab then the user has to pay the zakat.
Names of Allah
This page contains the ninety-nine names of Allah (Al Asma ul Husna). User can also know the meaning of that name by clicking on a particular name.
Clicking on a specific name will reveal the details associated with that particular name.
Dua Page
In this page dua of different kinds of surah are illustrated. User can recite these duas in their free time.
Tasbih Page
In this page several kinds of dua are illustrated at first. User can select any dua for counting tasbih. Required count for each round is also given which increase the user experience.
If we click any dua then the tasbih counter will be displayed. We can also reset the value of tasbih counter.
Prayer Time Page
In this page prayer times are illustrated according to user’s location. If user change their location prayer time will also change according to their location.
Qiblah Compass Page
In this page qiblah compass was implemented. The direction of the qiblah is always directed to the qiblah according to the user’s location.
Hizri Calendar
In this page the calendar is displayed in both English and Hizri format. This page was implemented using hijri library.
Nearest Mosque Finder
In this page users can find the nearest mosque from their location. All the mosque in 5km radius is shown in this page. Current location of the user is fetched using geo locator of pub get library. All the mosque within the region is shown using a red marker. The information of mosque will be updated if the location of user changed.
Personal Tracker
In this page user can track the information of the tasbih, hadees, aya, surah and dua. All of these can be added to this page by clicking on the bookmark sign. User can also delete the respective information at any time.
User Tracker
This special feature requires user registration, ensuring exclusive access to a unique page within our application. This special page employs an innovative approach, revealing the anonymous locations of all users on a map. This strategic use of geo locator library offers users a comprehensive overview of the crowd density around mosques, facilitating a better understanding of potential congestion. The functionality of this page is made possible by the seamless integration of geo locator services. During the user’s login process, the application captures and stores their location information, ensuring real-time accuracy. This gathered data is then securely transmitted to the database, forming the foundation for the dynamic display of user locations on the dedicated page. By leveraging the power of geo locator library, our application goes beyond conventional offerings, empowering users with a practical tool to measure crowd levels around mosques. This unique feature not only enhances user engagement but also contributes to a more informed and efficient navigation experience, aligning with our commitment to providing innovative solutions within the realm of our application.
How to contribute
- Fork the repository and clone it locally. Connect your local to the original “upstream” repository by adding it as a remote. Pull in changes from “upstream” often so that you stay up to date so that when you submit your pull request, merge conflicts will be less likely. (See more detailed instructions here.)
- Create a branch for your edits.
- Reference any relevant issues or supporting documentation in your PR (for example, “Closes #37.”)
- Include screenshots of the before and after if your changes include differences in HTML/CSS. Drag and drop the images into the body of your pull request.
- Test your changes! Run your changes against any existing tests if they exist and create new ones when needed. Whether tests exist or not, make sure your changes don’t break the existing project.
- Contribute in the style of the project to the best of your abilities. This may mean using indents, semi-colons or comments differently than you would in your own repository, but makes it easier for the maintainer to merge, others to understand and maintain in the future.
Built With
- Android Studio - How to install Android Studio
- Flutter - Flutter Official website