Trivia Game Development: How We Created a Trivia Mobile App for Studying the Bible
We created a cool trivia mobile game that allows people to study the Bible in an entertaining way. Quiz tours, daily challenges, daily gifts, lifelines, coins, bonus questions, leaderboard, amazing design… Get to know how we implemented such a great application!
Work: Our company created a trivia mobile game for believers that enables them to study the Bible in an entertaining way, memorize various facts, check out the answers, and compete with other users. The app has rich functionality that includes quizzes, a leaderboard, a daily challenge, different levels of test difficulty, lifelines, and more.
Summary: We developed a mobile solution that transforms a complicated learning process into an entertaining journey. The app is available on the App Store and Google Play and it is monetized through ads and in-app purchases. Although this trivia game was built for a narrowly focused audience, it received many reviews and downloads.
The project team consisted of 6 members: a back-end, iOS, and Android developers, project manager, QA engineer, and UX designer.
Tools and Technologies
Testing: Crashlytics, Fabric
User analytics: Mixpanel, Tenjin
Deep linking: Branch
A/B testing: Taplytics
The beginning and idea of the project
The project started at the end of August 2018. The customer, a US company that produces and advertises digital solutions for Christians, asked us to make a trivia game to study the Bible. The client wanted to confine the app release to Christmas as exactly at that time the marketing would bring the best results. Therefore, we had 3.5 months to build the product.
Making a trivia game: the product logic and functionality
When the customer contacted us, they had the prototype and wanted us to implement the functionality. In the beginning, we analyzed the project requirements, made some meaningful recommendations, and discussed it all with the client.
Although the prototype was already drawn, we saw that we could dramatically improve it. Since it was overwhelmed with various unnecessary elements, we suggested to remove them and place the others in a way that users would use the app without thinking.
The client agreed and so we connected our UX designer. As a result, he simplified the product interface by dozens of times and built a beautiful, intuitive design. Once this was done, we got down to trivia mobile game development.
The app includes three key features:
- Quiz quest
- Daily challenge
A quiz quest has different levels of difficulty: easy, medium, hard, and expert. Each level has at least 5 questions: their order and content are managed via the administrator panel. The higher the level is, the more questions have to be answered. To go to the next level, a user has to answer correctly on a programmed minimum of questions. The logic of the quiz quest enables you to go back, pass tests for several times, and view the given answers to better memorize the information.
A daily challenge is changed every 24 hours, so every day there is a new set of questions. While a quiz quest can be made at any time, a daily challenge can be passed only once. What’s more, we implemented a leaderboard to add some competition between the users. Their results are displayed on the table and are automatically updated.
After the key functionality was built, we implemented additional features like daily gifts, lives, and coins, an internal app currency to buy lifelines, and other things. Their integration helped us ensure an amazing user experience and motivate users to play as often as possible.
When the trivia mobile app was ready, it was tested for bugs and compliance with the requirements. Once our software testing team was convinced that everything was great, we launched the first app version. Then, the second stage began.
In the next releases, we added a user profile, bonus questions, sounds, and improved UI as well. Bonus questions are the third app module (besides a daily challenge and quiz quest) that provides users with the opportunity to earn additional points. When the user reaches a certain level result, they receive access to this feature.
Project challenges and implementations
As you can see, we created a trivia mobile game that includes several big modules. And one of the most important decisions was to choose an architecture that would let us easily add new modules and ensure perfect app functioning. In addition, we needed to make all of the product modules communicate with each other, scale, and support high loads, if required.
For that end, we built an iOS application on the Viper pattern that serves as the main architecture, and an Android–on the Clean Architecture with MVVM (Model–view–viewmodel), that provides the interaction of the UI and business logic.
Another task was to integrate user analytics tools to get a deep insight into their behavior, effectively manage the collected data, and correct the user flow. There are many great tools on the market but we chose and implemented Mixpanel and Tenjin. Together, they provide very detailed information and enable you to track plenty of things, from the most popular screens and questions to the number of times each user opens the app.
By investigating user behavior and carrying out a statistical examination, we clarify where and how to enhance the product. Thanks to Mixpanel, for example, we defined that one question is too difficult for users: most of them couldn’t answer it, closed the game, and started using it less. Other marketing tools that we implemented were Branch for putting deep links and Taplytics for A/B testing.
It is noteworthy, that our trivia mobile game successfully works in real time. It was a real challenge to ensure automatic content updates in the app. For instance, if the admin creates a new set of questions or adds or changes something in the existing questions, the user will immediately see those changes.
Then, we had to decide on the issue of Internet disconnection. Imagine, you passed a number of tests, took first place on the leaderboard, and suddenly it was disconnected without saving. Terrible, right?
Therefore, we provided instant communication between the app and server as well as automatic data saving in case of Internet disconnection or other crashes. Since there is almost no information stored in the application, it weighs very little.
Moreover, we developed our pride, a truly powerful administrator panel. Besides the content and data management that can be easily done from here, an admin can see the user feedback as messages that are sent from the app. What’s more, the panel offers the ability to import the content, which significantly saves time.
The current project stage
Currently, we’re creating the next product version. Together with the customer, we have a number of interesting ideas that we’re going to implement. We are currently working on the A/B testing of different app screens to define what the user likes the most. Then, we’re going to integrate animations in order to increase customer engagement.
We’re also improving this trivia game according to the audience’s needs and expectations. For that, we monitor user feedback and mobile analytics and then polish the app up.
Thank you for reading, we’re happy to see you here!:) To meet in person please contact us or drop us a line for a free consultation on any issue you may have
Get weekly updates on the newest design stories, case studies and tips right in your mailbox.
In the modern world, almost every one of us uses one of various messenger apps. Thanks to these apps, we always feel as if we are next to our friends or colleagues at work. It's time to talk about whether whole families can feel as comfortable online as they do in person.
Sometimes only one piece of the puzzle is missing to make a good decision, and it can be very difficult to figure out which one. People used to like using clairvoyant services for all situations. They still like it. Could you imagine if this was now available to you in just a couple of clicks? Well, it's actually possible.
Here are the top 10 reasons why Selenium is the best tool for testing web applications on the market (and 3 reasons that make it less perfect–but who cares when it’s so cool anyway? : ) )