~/
Published on

AnkiBee: An Attempt to Tackle Malaysia's 3M Challenge with Open Source

Authors
  • avatar
    Name
    Hachiro
    Twitter

Introduction

In Malaysia, early mastery of foundational skills such as reading, writing, and arithmetic is crucial, yet around 122,000 Year One students face noticeable challenges within their first few months of schooling. Motivated by this gap, I developed AnkiBee—a free, open-source tool that automates the creation of spelling bee flashcards, streamlining an otherwise manual process for educators and underscoring how targeted software solutions can effectively address real-world educational challenges.

The 3M Challenge

"Seramai 122,000 murid Tahun Satu bagi sesi akademik tahun ini di seluruh negara dikesan masih belum menguasai kemahiran membaca, menulis dan mengira (3M)."1

This alarming statistic highlights the urgent need for innovative solutions to improve foundational learning. The 3M skills are the cornerstone of a child's educational journey in Malaysia, yet a significant number of students struggle to master them. These challenges are complex, affecting not only the students but also the educators who are responsible for teaching these essential skills.

I believe one of the most effective ways to help students overcome these challenges is by using gamification and flashcards. Gamification makes learning more engaging and fun, which can really motivate students to get involved. Flashcards are also incredibly useful because they encourage active recall, which helps improve memory retention. When you combine these two methods, it creates a more interactive and efficient way to help students master the 3M skills. I truly believe this approach can lay the groundwork for their future academic success.

The Birth of AnkiBee

My brother, a primary school teacher with KPM, reached out to discuss how we could use technology to address the 3M challenges faced by children. He shared his initiative to teach basic English using Anki, a flashcard program, which immediately caught my attention. Having relied on Anki myself during my studies, I know firsthand how effective it can be for retaining information quickly.

This got me thinking: introducing kids to a digital flashcard system could be a brilliant way to integrate modern technology into learning. With smartphones being so common nowadays, many parents even buy them for their kids, whether to calm tantrums or for other reasons. The potential to leverage this technology for education is greater than ever.

What's also interesting to me is how many kids are so comfortable using smartphones but have little to no experience with laptops. It seems a bit counterintuitive, doesn't it? We need to find a way to utilize what they have in their hands to their advantage.

In one of our conversations, my brother also shared the struggle he faces when preparing his students for a spelling bee competition. One of the most time-consuming tasks is manually finding and pairing audio files with each word, which takes up so much of his time. That's when I was inspired to build AnkiBee, a free, open-source tool to automate the creation of spelling bee flashcards. AnkiBee pairs words with audio automatically, freeing up teachers to focus more on teaching and less on preparation.

One thing to note is that—AnkiBee doesn't directly solve the entire 3M challenge. What it does is address a specific problem within that broader context—helping teachers efficiently create spelling bee flashcards, which can play a key role in improving literacy skills.

While it's not a comprehensive solution to the 3M, it serves as one of the stepping stones toward overcoming some of the barriers students face in mastering basic skills like reading, writing, and arithmetic. As an open-source tool, AnkiBee also encourages the use and development of other open-source educational tools, fostering collaboration and innovation in the education sector. It's just one part of a larger effort to make learning more accessible and effective for students, especially when paired with other open-source tools and technologies.

AnkiBee App

What Exactly is Anki?

Anki is an open-source spaced repetition program that aids learners in memorizing information efficiently. Its scientifically-backed algorithm schedules flashcards at optimal intervals to maximize retention. While popular among medical students and language learners, Anki's versatility makes it ideal for any repetitive learning task, including the foundational 3M skills.

If someone were to ask my secret for achieving good exam results, this would be it. I've been using them for a long time to quickly build strong memory retention during exam preparation. To learn how to use Anki effectively, check out this dude - he's a legend.

The AnkiBee Solution

AnkiBee leverages the strengths of Anki to address the 3M challenges by automating the creation of spelling bee flashcards. Built with Nextron, AnkiBee offers a user-friendly interface and robust functionality.

AnkiBee focuses specifically on streamlining the creation of spelling bee flashcards, a crucial component in addressing the Menulis (writing) aspect of the 3M challenges. By automating this process, AnkiBee reduces the manual effort required by educators, allowing them to focus more on teaching and less on preparation.

Installation Guide

Desktop Setup

  1. Visit the AnkiBee GitHub repository.
  2. Download the latest release from the repository's "Releases" section.
  3. Install the Anki desktop application from AnkiWeb.
  4. Follow the standard installation process for your operating system.
  5. Use AnkiBee to generate spelling bee flashcards and export them as .apkg files for mobile use if needed.

Mobile Flashcard Import

AnkiBee is not directly associated with mobile apps like AnkiDroid or AnkiMobile but generates compatible flashcard decks that can be imported into these applications.

For Android (AnkiDroid):

  1. Install AnkiDroid from the Play Store.
  2. Transfer the exported .apkg file from your desktop to your Android device using:
    • Email
    • Cloud storage (e.g., Google Drive)
    • Direct USB transfer
  3. Open the .apkg file with your file manager, and AnkiDroid will automatically import the deck.

For iOS (AnkiMobile):

  1. Install AnkiMobile ($24.99) from the App Store.
  2. Transfer the .apkg file using:
    • AirDrop
    • Cloud storage (e.g., iCloud Drive, Dropbox)
    • iTunes File Sharing
  3. Tap the .apkg file and select "Open in Anki."
  4. The flashcard deck will be imported and ready for study.

This process allows educators and learners to leverage AnkiBee's flashcard automation seamlessly across both desktop and mobile environments.

Creating Your First Deck

  1. Launch the AnkiBee application.
  2. Input your spelling words into the interface.
  3. AnkiBee will automatically generate audio files for each word.
  4. Export your deck as an .apkg file.

Best Practices for Educators

  1. Create separate decks for different subjects or units.
  2. Use consistent naming conventions for your decks.
  3. Verify audio pronunciations before sharing with students.

Technical Breakdown

AnkiBee is a cross-platform desktop application built using the powerful Nextron framework, seamlessly combining Electron, Next.js, and TypeScript for a modern, scalable, and performant solution.

Architecture

Core Stack

  • Frontend Framework:

    • Tailwind CSS : Rapid and efficient UI development with utility-first styling.
    • Radix UI: Headless components for accessible and customizable user interfaces.
  • UI Enhancements:

    • Framer Motion: Smooth and dynamic animations to enhance user experience.
    • Lucide React: Flexible and customizable SVG icon library.
    • Sonner: Toast queue manager for seamless notification handling.
    • WaveSurfer.js: Interactive audio visualization engine.

Directory Structure

├── app/                  # Electron main process
├── renderer/             # Next.js frontend
│   ├── components/
│   ├── contexts/
│   ├── lib/
│   ├── pages/
│   └── types/
└── resources/            # Assets

System Integration

  • Native Features:
    • Persistent Local Storage: Efficient data retention without external dependencies.
    • Automatic Updates: Powered by electron-updater via GitHub Release method.
    • Cross-Platform Compatibility: Windows, macOS, and Linux support.

External Services

  • Dictionary API:

    • Source: dictionaryapi.dev
    • Functionality: Fetches word definitions, part of speech, and usage examples in structured JSON format.
  • Audio Speech:

    • Source: Google Dictionary (Unofficial API)
    • Method: scraping for audio MP3 files from Google Dictionary

Conclusion

AnkiBee is a key module in a larger educational system I'm planning developing to address challenges faced by Malaysian educators. Inspired by real experiences, including those of my brother, it automates spelling bee flashcard creation, allowing teachers to focus more on teaching than administrative tasks.

Education should not be held back by premium paywalls. Open-source solutions are the future, providing accessible, effective tools that empower both educators and students without barriers.

Footnotes

  1. Fadhlina Sidek, Minister of Education. (2024, January 3). "122,062 murid Tahun 1 belum kuasai kemahiran 3M pada 3 bulan pertama persekolahan." Astro Awani. Retrieved January 5, 2024, from https://www.astroawani.com/berita-malaysia/122062-murid-tahun-1-belum-kuasai-kemahiran-3m-pada-3-bulan-pertama-persekolahan-fadhlina-499082. Translation: "A total of 122,000 Year One students nationwide in this academic session have been identified as not yet mastering reading, writing and arithmetic (3M) skills."