A web-based mathematical function plotting tool with Python backend and D3.js frontend.
- ๐งฎ Mathematical Expression Evaluation: Parse and evaluate complex mathematical expressions using NumPy and numexpr
- ๐ Multi-variable Support: Handle expressions with multiple parameters and variables
- โก High Performance: Vectorized computations with intelligent caching
- ๐ก๏ธ Security: Safe expression parsing with protection against code injection
- ๐ REST API: Clean, documented API endpoints for frontend integration
- ๐ฏ Comprehensive Function Support: Trigonometric, logarithmic, exponential, and polynomial functions
- ๐ Interactive Graphing: Smooth, real-time graph rendering with D3.js
- ๐ Dual Range System:
- Default Display: [-10, 10] for focused view
- Full Computation: [-30, 30] for comprehensive data
- Toggle Range: Instantly switch between zoomed and full views
- ๐๏ธ Real-time Parameter Updates: Interactive sliders for multi-variable expressions
- ๐จ Color-coded Interface: Consistent color scheme across UI and graphs
- ๐ฑ Responsive Design: Works seamlessly on desktop and mobile devices
- ๐ Offline Mode: Limited functionality when backend is unavailable
- ๐ Multi-function Support: Plot and manage multiple functions simultaneously
- ๐พ Export Functionality: Download graphs as PNG or SVG
./start.shstart.batThat's it! The app will be running at http://localhost:3000
\backend\src> python -m uvicorn main:app --host <private_ip> --port 3000
- Installs dependencies automatically (handles managed environments)
- Starts server immediately
- Works in any Python environment (Linux, Mac, Windows)
Note: If you see "externally-managed-environment" message, that's normal! The script handles it automatically.
./quick-setup.sh # Creates venv
./start_grapher.sh # Uses venv-
./setup.sh(orsetup.baton Windows):- Creates a Python virtual environment automatically
- Installs all required dependencies
- Creates startup scripts
- Sets up configuration
-
./start_grapher.sh(orstart_grapher.bat):- Activates the virtual environment
- Starts the FastAPI server
- Runs on http://localhost:3000
- Main App: http://localhost:3000
- API Documentation: http://localhost:3000/docs
- Usage Guide - How to use the application, examples, features
- API Documentation - REST API endpoints, architecture, security
- Development Guide - Testing, configuration, project structure
- OpenSpec Process - AI-assisted development methodology
# Run backend tests
cd backend && python -m pytest tests/ -v
# Run with coverage
cd backend && python -m pytest tests/ --cov=srcThis project is licensed under MIT License.