
Refresher – A WASSCE Exam Preparation App
Client Overview
The client sought to create a mobile app to support students preparing for the West African Senior School Certificate Examination (WASSCE). The goal was to provide an engaging, user-friendly platform where students could access practice questions, video tutorials, and interactive quizzes to enhance their learning experience.
Key Features
1. Interactive Quiz Platform
- Students can take timed quizzes based on various WASSCE subjects, including Mathematics, Science, and English.
- Instant feedback is provided with explanations for correct and incorrect answers.
- The app tracks scores and progress to help students identify areas needing improvement.
2. Video Tutorials
- A library of video tutorials guides students through complex topics, including practical tips on shading and answering questions correctly.
- Videos are categorized by subject for easy navigation.
3. Subject-Specific Content
- Each subject features a repository of practice questions and study materials curated to match WASSCE standards.
- Content updates are managed via Drupal’s user-friendly interface, allowing admins to add or modify questions seamlessly.
4. Offline Mode
- Students can download quizzes and tutorials to study without internet access, making the app ideal for areas with limited connectivity.
5. Personalized Dashboard
- A user-friendly dashboard displays progress metrics, completed quizzes, and a recommended learning path tailored to the student’s strengths and weaknesses.
6. Push Notifications
- Notifications keep users informed about updates, new content, and reminders for upcoming quizzes.
Technology Stack
Frontend: Flutter
- Cross-Platform Support: Delivered a consistent experience across Android and iOS devices.
- Dynamic UI/UX: Implemented smooth animations and a responsive interface to enhance usability.
Backend: Drupal
- Content Management: Allowed for the creation and management of questions, answers, and tutorials.
- REST API: Provided secure and scalable endpoints for the mobile app to fetch content and submit quiz results.
- User Authentication: Integrated with the app to manage user accounts and securely store progress data.
Why Drupal Was Used as the Backend for Refresher
1. Robust Content Management
Drupal is a powerful content management system (CMS) that excels in handling large volumes of structured and unstructured content. For the Refresher app, this capability was essential to organize and manage:
- A vast library of WASSCE questions across multiple subjects.
- Video tutorials categorized by topics and difficulty levels.
- Regular updates to content without requiring app updates.
2. API-First Architecture
Drupal's API-first approach was instrumental in enabling seamless communication between the backend and the Flutter-based mobile app. By leveraging Drupal’s RESTful API capabilities, the app could:
- Fetch dynamic content such as quizzes, tutorials, and user progress.
- Allow secure submission of quiz answers and retrieval of results in real-time.
3. Scalability and Flexibility
The Refresher app needed a backend that could grow alongside its content and user base. Drupal’s scalability ensured:
- Easy management of expanding content as the app introduced more subjects and quizzes.
- Support for a growing number of simultaneous users accessing and syncing data.
4. User Management
Drupal’s robust user authentication and role management features made it the perfect choice for:
- Secure user login and registration.
- Assigning roles to admin users who could update content and manage user activity.
5. Multilingual Capabilities (Future-Ready)
While the initial release of Refresher was in a single language, Drupal’s built-in multilingual support provides the flexibility to expand to multiple languages in the future, catering to students across different regions.
6. Content Versioning and Moderation
Drupal's versioning and content moderation workflows ensured that:
- Updates to quizzes and tutorials could be reviewed and approved before publishing.
- Content integrity was maintained, minimizing errors or inconsistencies.
7. Open Source and Cost-Effective
Being open-source, Drupal eliminated the need for licensing fees, making it a cost-effective solution for the client. Its active community also ensured access to plugins, modules, and updates that reduced development time and costs.
By choosing Drupal, the Refresher app benefited from a backend that was not only robust and secure but also scalable and future-ready, perfectly aligning with the app’s mission to support students in their WASSCE preparation journey.