A comprehensive Django web application for mathematical computations and learning, featuring modules for algebra, calculus, and numerical analysis.
- Algebra: Algebraic equation solving and manipulation
- Calculus: Integration, differentiation, and calculus operations
- Numerical Analysis: Numerical integration and differentiation methods
- User authentication (registration/login)
- Interactive mathematical computations
- Feedback and reporting system
- Modern responsive web interface using Bootstrap
- Mathematical visualization with Plotly
- Symbolic mathematics with SymPy
- Backend: Django 4.2.4
- Mathematics: SymPy, NumPy, mpmath
- Visualization: Plotly 5.16.1
- Frontend: Bootstrap, jQuery
- Database: SQLite (development)
- Authentication: Django Auth with custom user management
- Python 3.8+
- pip (Python package manager)
- Git
-
Clone the repository
git clone https://github.com/ravi-ivar-7/Fimac-Mathematics cd Fimac-Mathematics -
Create and activate virtual environment
python3 -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install system dependencies (Linux/Ubuntu)
sudo apt update && sudo apt install -y libffi-dev python3-dev build-essential -
Install Python dependencies
pip install -r requirements.txt pip install numpy # Additional required dependency -
Navigate to Django project directory
cd mathematics -
Run database migrations
python manage.py migrate
-
Start the development server
python manage.py runserver
-
Access the application Open your browser and navigate to
http://127.0.0.1:8000
Fimac-Mathematics/
โโโ mathematics/ # Main Django project
โ โโโ mathematics/ # Project settings
โ โ โโโ settings.py
โ โ โโโ urls.py
โ โ โโโ wsgi.py
โ โโโ core/ # Core app (home, auth, feedback)
โ โโโ algebra/ # Algebra computations
โ โโโ calculus/ # Calculus operations
โ โโโ numerical_analysis/ # Numerical methods
โ โโโ templates/ # HTML templates
โ โโโ static/ # CSS, JS, images
โ โโโ manage.py
โโโ requirements.txt # Python dependencies
โโโ venv/ # Virtual environment
โโโ README.md
-
Home Page (
/)- Overview of available mathematical tools
- Navigation to different modules
-
Algebra (
/algebra)- Algebraic equation solving
- Mathematical expression manipulation
-
Calculus (
/calculus)- Integration (definite and indefinite)
- Differentiation
- Calculus visualization
-
Numerical Analysis (
/numerical_analysis)- Numerical integration methods
- Numerical differentiation
- Computational mathematics
- Registration/Login: Create account and manage sessions
- Feedback System: Submit feedback about the application
- Report Issues: Report bugs or problems
- Credits: View project contributors and acknowledgments
- Django==4.2.4
- sympy==1.12 (symbolic mathematics)
- numpy==2.3.3 (numerical computations)
- plotly==5.16.1 (data visualization)
- mpmath==1.3.0 (arbitrary precision arithmetic)
- django-allauth==0.54.0
- cryptography==41.0.3
- PyJWT==2.8.0
- requests==2.31.0
- packaging==23.1
- tenacity==8.2.3
python manage.py createsuperuserpython manage.py testpython manage.py collectstatic- Debug Mode: Enabled by default (
DEBUG = True) - Database: SQLite for development
- Time Zone: Asia/Kolkata
- Static Files: Served from
static/directory - Media Files: Uploaded to
media/directory
For production deployment, consider setting:
SECRET_KEY: Django secret keyDEBUG: Set toFalseALLOWED_HOSTS: Configure allowed hostnames- Database configuration for production
- Fork the repository
- Create a feature branch (
git checkout -b feature/new-feature) - Commit your changes (
git commit -am 'Add new feature') - Push to the branch (
git push origin feature/new-feature) - Create a Pull Request
This project is open source. Please check the license file for more details.
For support, feedback, or bug reports:
- Use the built-in feedback system in the application
- Submit issues through the report feature
- Contact the development team
- Built with Django web framework
- Mathematical computations powered by SymPy and NumPy
- Visualization using Plotly
- UI components from Bootstrap
Note: This application is designed for educational and research purposes in mathematics. Ensure proper validation of results for critical applications.