Github Repo

Project Overview

Dyslexia Farm is an educational game designed to help children with spelling disabilities, particularly dyslexia. The game provides an attractive and interactive platform for children to practice spelling and word recognition, aiming to improve their reading and writing skills.

Key Features

  • Two main games: Words Game and Spelling Game
  • User-friendly interface designed for children
  • Multilingual support (English and Arabic)
  • Performance tracking and reporting
  • Adjustable difficulty levels

Technology Stack

  • Frontend: JavaFX
  • Backend: SQL (for data storage and retrieval)

Project Structure

The project consists of several Java classes and FXML files, each serving a specific purpose in the game’s functionality:

  1. DyslexiaFXMLController.java: Controls the main game interface for the Words Game.

  2. EndScreenFXMLController.java: Manages the end screen displayed after completing a game.

  3. LoginController.java: Handles user authentication and login process.

  4. SpillingFXMLController.java: Controls the Spelling Game interface and logic.

  5. mainMenuController.java: Manages the main menu interface and navigation.

  6. reportsController.java: Handles the display of user performance reports.

  7. rhymeWords.java: Likely manages the word database or logic for rhyming words in the games.

  8. dyslexiaFXMain.java: The main class that launches the application.

FXML Files (UI Layouts):

  • SpillingFXML.fxml
  • dyslexiaFXML.fxml
  • endSreenFXML.fxml
  • loginPage.fxml
  • mainMenu.fxml
  • reports.fxml

Resource Files:

  • _ar.properties: Arabic language resources
  • _en.properties: English language resources
  • derby.properties: Database configuration

Game Features

1. Login System

Login Page

The login page allows users to:

  • Enter username and password
  • Choose between English and Arabic languages
  • Access the game upon successful authentication

2. Main Menu

Main Menu

The main menu provides access to:

  • Words Game
  • Spelling Game
  • Performance Reports
  • Exit option

3. Words Game

Words Game

Features:

  • Helps players differentiate between commonly mistaken words
  • Child-friendly interface with background music
  • Three difficulty levels for sound

4. Spelling Game

Spelling Game

Features:

  • Focuses on letter sounds and spelling
  • Three difficulty levels
  • Real-time score tracking (points and misses)

5. Performance Reporting

Report Page

  • Retrieves and displays user performance data from the database
  • Shows high scores for each game

Database Structure

Database Structure

The database table includes:

  • User information (username, password)
  • Game performance data (points, misses) for both games
  • Date records for high scores

Conclusion

Dyslexia Farm demonstrates an innovative approach to helping children with dyslexia and other spelling disabilities. By combining educational content with game-like interactions, it provides an engaging platform for learning and practice. The project’s use of JavaFX for the frontend and SQL for data management showcases a well-rounded application of software development skills in creating an educational tool.