A full-stack AI-powered math-solving application that helps students solve algebra, calculus, and graphing problems with detailed step-by-step explanations and visual representations.
- β Algebra: Solve equations, simplify expressions, find roots
- β Calculus: Derivatives, integrals, limits with detailed steps
- β Graphing: Beautiful function graphs with analysis
- β Step-by-Step Explanations: Every step includes mathematical reasoning
- π Real-time problem solving
- π Graph visualization with Matplotlib
- πΎ MongoDB integration for problem history
- π¨ Modern, responsive UI with Tailwind CSS
- π Beautiful dark theme
- π± Mobile-friendly design
- Framework: Flask (Python)
- Math Engine: SymPy (symbolic mathematics)
- Graphing: Matplotlib + NumPy
- Database: MongoDB
- API: RESTful with CORS support
- Framework: React 18 + Vite
- Styling: Tailwind CSS
- HTTP Client: Axios
- Design: Custom Equai AI design system
- Python 3.8+
- Node.js 16+
- MongoDB Atlas account (already configured)
# Navigate to backend directory
cd backend
# Install Python dependencies
pip install -r requirements.txt
# Run the Flask server
python app.pyBackend runs on http://localhost:5000
# Navigate to frontend directory
cd frontend
# Install dependencies
npm install
# Run development server
npm run devFrontend runs on http://localhost:5173
- Open the app in your browser at
http://localhost:5173 - Select problem type: Algebra, Calculus, or Graph
- Enter your expression:
- Algebra:
x^2 + 2x - 3 = 0 - Calculus:
x^3 + 2*x^2 - x - Graph:
sin(x) + cos(x)
- Algebra:
- Click "Solve Problem"
- View results:
- Solution with answer
- Step-by-step explanation
- Mathematical reasoning for each step
- Graph visualization (if applicable)
x^2 - 4 = 0
2x + 5 = 11
x^3 - 8 = 0
Derivative: x^3 + 2*x^2 - x
Integral: sin(x) + cos(x)
Limit: (x^2 - 1)/(x - 1)
sin(x)
x^2 - 4*x + 3
exp(-x^2)
EquaAI/
βββ backend/
β βββ app.py # Flask application
β βββ config.py # Configuration
β βββ database.py # MongoDB connection
β βββ math_solver.py # Math solving engine
β βββ graph_generator.py # Graph generation
β βββ requirements.txt # Python dependencies
β βββ .env # Environment variables
βββ frontend/
β βββ src/
β β βββ components/ # React components
β β βββ services/ # API services
β β βββ App.jsx # Main app component
β β βββ index.css # Global styles
β βββ package.json
β βββ tailwind.config.js
βββ README.md
- Primary Color:
#1A73E8(Blue) - Accent Color:
#00C896(Green) - Dark Background:
#0E1117 - Card Background:
#1A1F2E - Fonts: Poppins, Montserrat
Solve mathematical problems
Generate function graph
Get solution history
Get usage statistics
Every problem shows:
- Each mathematical step
- Explanation of what's happening
- Why that step is taken
- Visual highlighting of the process
The AI not only shows calculations but explains the reasoning:
- "This is a quadratic equation (degree 2)"
- "Applying the power rule for polynomial terms"
- "Substituting x = 2 confirms it's a valid solution"
For graphs, you get:
- Function visualization
- Derivative calculation
- Critical points
- Y-intercept
- X-intercepts (roots)
The app is pre-configured with MongoDB Atlas:
- Connection string in
.env - Database:
equai_db - Collection:
problems
Detailed deployment instructions are available in DEPLOYMENT.md.
Deploy to Render:
- Push your code to GitHub
- Create a new Web Service on Render
- Connect your repository
- Set environment variables
- Deploy!
Deploy to Vercel:
- Push your code to GitHub
- Import your project to Vercel
- Configure build settings
- Deploy!
- π€ Voice input for problems
- π· OCR for handwritten math
- π€ User accounts and progress tracking
- π Advanced analytics dashboard
- π Multi-language support
- π± React Native mobile app
This is a demonstration project built for educational purposes.
MIT License
Built with β€οΈ for students and math learners worldwide.
Equai AI - Making math accessible, one step at a time! β¨