Welcome to the Huroof app! This project is designed to help you learn some of the hardest Arabic alphabet letters in a fun and interactive way using machine learning features. The app focuses on the following letters: س، ش، ر، ك
Before you begin, make sure you have the following installed:
- Node.js
- Expo CLI
- A compatible Operating System: Windows, macOS, or Linux
- Python 3.12+
Follow these steps to get the project up and running:
-
Clone the repository:
git clone https://github.com/3bdop/Huroof-app.git
-
Install dependencies:
npm install
-
Start the client:
npx expo start
-
Start the server:
For a standard start:
node server.js
For debugging and live refresh:
nodemon server.js
Note: Install
nodemon
globally if you haven't already:npm install -g nodemon
-
Start main.py (FastAPI):
For standard start
python backend/app/main.py
For debugging and live refresh
uvicorn backend.app.main:app --reload
-
Download the Expo Go app on your mobile device.
-
Scan the QR code provided by Expo to run the app on your device.
During development, you need to create an env.js
file inside the config/
directory with the following content:
export const ENV = {
SERVER_IP: "<your_server_ip_here>",
SERVER_PORT: "<your_server_port_here>",
};
Follow these steps to set up the Python environment for model development:
-
Create a virtual environment:
For Windows:
python -m venv .venv .\.venv\Scripts\activate.bat
For Linux/macOS:
python -m venv .venv source .venv/bin/activate
-
Install Python dependencies:
pip install -r requirements.txt
-
Run Jupyter Notebooks:
jupyter notebook
Note: You can also use Jupyter notebooks directly within VSCode. Install the Jupyter extension for VSCode and open your notebooks in the editor.