https://github.com/imadsaddik/randomayahgenerator
Generate random pair of Quran verses before going to pray.
https://github.com/imadsaddik/randomayahgenerator
android-application android-studio java quran quran-app sqlite
Last synced: 8 months ago
JSON representation
Generate random pair of Quran verses before going to pray.
- Host: GitHub
- URL: https://github.com/imadsaddik/randomayahgenerator
- Owner: ImadSaddik
- Created: 2025-02-05T10:04:57.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-22T16:55:16.000Z (11 months ago)
- Last Synced: 2025-03-22T17:36:56.354Z (11 months ago)
- Topics: android-application, android-studio, java, quran, quran-app, sqlite
- Language: Java
- Homepage:
- Size: 4.74 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Random Ayah Generator
An Android application that allows users to bookmark and generate random Quranic verses (Ayahs). It features a built-in Quran database, bookmarking functionality, playback count tracking, and a dashboard for viewing statistics. The app supports both light and dark modes.
## Features
### Random ayah generation
Generates random pairs of Ayahs from the bookmarked Ayahs.

### Bookmark ayahs
Allows users to manually add and bookmark Ayahs, either individually or entire Surahs.

### Add complete surah
Easily bookmark all Ayahs from a selected Surah.

### View bookmarked ayahs
Scrollable list with infinite scrolling to view all bookmarked Ayahs.

### Delete bookmarked ayahs
Delete individual Ayahs from bookmarks with confirmation.

### Dashboard
Displays statistics like the most played Ayahs, most played Surahs, and total play count.

### Navigation drawer
Facilitates smooth navigation between different activities.

### Database management
- **Save Database:** Export the bookmarked Ayahs database to a file.
- **Load Database:** Import a previously saved database, replacing the current bookmarks.
- **Delete All Data:** Clear all bookmarked Ayahs.
## Setup and usage
1. **Clone the repository:**
```bash
git clone git@github.com:ImadSaddik/RandomAyahGenerator.git
```
2. **Open the project in Android Studio.**
3. **Build and run the application** on an emulator or physical device.
## Key concepts
I learned a lot while working on this project. First, I made wireframes for each part of the app before writing any code. This helped me see how the app would look and made it easier to build in Android Studio.
From the start, I designed the app to support both light and dark modes. When I switched themes, I also figured out how to use state management to reload data that got lost during the switch.
I learned how to manage SQLite databases, create navigation drawers, and use infinite scrolling to go through the stored data smoothly.