Equa-AI is an intelligent mobile application powered by a robust backend that allows users to capture images of handwritten or printed mathematical equations and instantly receive step-by-step solutions. Utilizing Google's advanced Gemini 1.5 Flash vision model, Equa-AI accurately recognizes complex expressions and renders them beautifully in LaTeX.
- 📸 Image Recognition: Seamlessly process images containing mathematical equations.
- 🧠 AI-Powered Solving: Get accurate, step-by-step solutions powered by Google Gemini.
- ✍️ LaTeX Rendering: Beautifully formatted mathematical output using MathJax and SVG.
- 📱 Cross-Platform: Built with React Native and Expo for a smooth iOS and Android experience.
- ⚡ Fast Backend: High-performance API built with FastAPI.
- Framework: React Native with Expo
- Styling: NativeWind (TailwindCSS)
- Math Rendering:
react-native-mathjax-html-to-svg - Navigation: React Navigation
- Framework: FastAPI (Python)
- AI Model: Google Gemini API (
gemini-1.5-flash) - Server: Uvicorn
- Node.js and npm/yarn
- Python 3.8+
- Expo CLI
- Google Gemini API Key
- Navigate to the backend directory:
cd backend - Create and activate a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # On Windows use `venv\Scripts\activate`
- Install dependencies:
pip install -r requirements.txt
- Create a
.envfile in thebackenddirectory and add your Gemini API key:GEMINI_API_KEY=your_google_gemini_api_key_here
- Start the backend server:
The API will be available at
python main.py # Or using uvicorn: uvicorn main:app --reloadhttp://localhost:8000.
- Navigate to the frontend directory:
cd equa-ai - Install dependencies:
npm install
- Update the API endpoint in the frontend configuration to point to your local backend (if necessary).
- Start the Expo development server:
npm start # or npx expo start - Scan the QR code with the Expo Go app on your phone, or run on an emulator/simulator.
GET /- Health check and statusPOST /solve- Upload an image to get recognized math and step-by-step solutionsGET /health- API monitoring endpoint
Contributions, issues, and feature requests are welcome! Feel free to check the issues page if you want to contribute.
This project is open-source and available under the MIT License.