Pranamika is an Android application that allows citizens to rate and review local government officials. It is developed as part of a mini-project for an Android app development course.
- View Officials: Displays a list of government officials with their name, department, and designation.
- Rate and Review: Users can rate and write reviews for individual officials.
- View Reviews: View all reviews for a particular official.
- Firebase Integration: Utilizes Firebase Firestore to store and retrieve data.
-
official
Stores information about government officials.- Fields:
name(string)dept(string)designation(string)
- Document IDs:
- Named as
officialId1,officialId2, etc.
- Named as
- Fields:
-
reviews
Automatically created when a review is added for an official.- Fields:
officialId(string) - Links to the official being reviewed.rating(number) - Rating given by the user.comment(string) - Review text.timestamp(timestamp) - Time of the review.
- Fields:
-
Clone the repository:
git clone https://github.com/your-username/pranamika.git cd pranamika -
Add your Firebase configuration:
- Obtain the
google-services.jsonfile from your Firebase project. - Replace the existing placeholder file in the
app/directory with yourgoogle-services.json.
- Obtain the
-
Update Firestore Database:
- Ensure the database structure matches the descriptions above.
- Add some sample data to the
officialcollection to test the app.
-
Build and Run the App:
- Open the project in Android Studio.
- Sync the project with Gradle files.
- Run the app on an emulator or connected device.
- User Authentication: Signup/login for users to access the app.
- Official Details Page: Displays a list of officials fetched from Firestore.
- Review Page: View all reviews and overall rating for a particular official.
- Add Review: Submit a new review for an official.
- You must configure Firebase properly for the app to function.
- Ensure the
officialcollection has data to display a list of officials initially.
This project is developed for academic purposes and is not intended for commercial use.