A simple web application that implements a neural network from scratch to recognize handwritten digits from the MNIST dataset. It features a React frontend with a canvas for user input and a Python/Flask/NumPy backend for the neural network logic.
- Frontend: React, JavaScript
- Backend: Python, Flask, NumPy
To run this project, you will need to run the backend server and the frontend application in two separate terminals.
-
Navigate to the server directory:
cd server -
Create and activate a virtual environment:
# For macOS/Linux python3 -m venv venv source venv/bin/activate # For Windows python -m venv venv venv\Scripts\activate
-
Install the dependencies:
# For macOS/Linux pip3 install -r requirements.txt # For Windows pip install -r requirements.txt
-
Run the server:
# For macOS/Linux python3 server.py # For Windows python server.py
The backend server will start on
http://localhost:3001.
-
Navigate to the client directory in a new terminal:
cd client -
Install the dependencies:
npm install
-
Run the app:
npm start
The frontend development server will start, and your browser should open to
http://localhost:3000.