An open API service indexing awesome lists of open source software.

https://github.com/joaquin144/cointrivia

Coin Trivia is an open-source quiz app that offers a captivating and educational experience. Play Quiz and Win coins
https://github.com/joaquin144/cointrivia

android-application android-game firebase java learning quiz-game xml

Last synced: 5 months ago
JSON representation

Coin Trivia is an open-source quiz app that offers a captivating and educational experience. Play Quiz and Win coins

Awesome Lists containing this project

README

          

# Coin Trivia App

## Description
Coin Trivia is an engaging quiz app that tests your knowledge across various topics. Earn virtual coins, climb the leaderboard as you answer thousands of challenging questions. Choose from a wide range of categories and customize your trivia experience. Developed as an open-source project, Coin Trivia offers endless fun and learning opportunities.

## Screenshots

| Image 1 | Image 2 |
| -------------------------------------------- | -------------------------------------------- |
| | | |

| Image 3 | Image 4 |
| -------------------------------------------- | -------------------------------------------- |
| | | |

## Technologies Used
- Java
- XML
- Model-View-Controller (MVC) Architecture
- Firebase
- Android SDK
- Glide

## App Features
- Thousands of challenging trivia questions across various categories
- Virtual coins and leaderboard to track your progress and compete with others
- Track your virtual coins and progress
- Privacy Policy
- Delete Account and related data

## MVC (Model-View-Controller) App Architecture

The Coin Trivia app follows the industry-standard MVC (Model-View-Controller) architecture, providing a robust and scalable structure for the application. This architecture promotes separation of concerns, making the codebase more modular and maintainable.

### Model

The Model represents the data and business logic of the app. It includes the data structures, database interactions, API requests, and other components responsible for handling the app's data.

### View

The View layer is responsible for the app's user interface and presentation. It includes all the visual components such as activities, fragments, and layouts that the users interact with. In Coin Trivia, the View layer encompasses the various screens, UI elements, and navigation flows.

### Controller

The Controller acts as the intermediary between the Model and the View. It handles user input, updates the Model, and manipulates the View accordingly. The Controller layer in Coin Trivia encapsulates the logic for user interactions, manages the app's state, and orchestrates the flow of data between the Model and the View.

By adopting the MVC architecture, the Coin Trivia app achieves a clear separation of concerns, allowing for easier code organization, testability, and future scalability. The Model-View-Controller pattern promotes code reusability, enhances development efficiency, and ensures a more maintainable and extensible app codebase.

## Website
- [Web App Link](https://coin-trivia-website-rsnn-joaquin144.vercel.app/) (Deployed Version)
- [Web App Repository](https://github.com/Joaquin144/CoinTrivia-Website) (GitHub Repository)

## [Demo Video](https://youtu.be/DEvtbpqqxoE)
Image Preview

## Getting Started

To run the app locally, follow these steps:

1. Clone the repository: (https://github.com/Joaquin144/Social-Jaw.git)

2. Open the project in Android Studio.

3. Set up Firebase project and configure the necessary services (Authentication, Firestore, Storage) by following the Firebase documentation.

4. Update the Firebase configuration file (`google-services.json`) with your own project details.

5. Build and run the app on an Android device or emulator.

## Contributing

Contributions are welcome! If you find any issues or have suggestions for improvement, please create a new issue or submit a pull request.

## License
This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for more details.

## Developed By
Coin Trivia app is developed by [Joaquin144](https://github.com/Joaquin144).

Feel free to reach out with any questions or suggestions.