- Project Overview
- Features
- Installation
- Usage
- Experiments
- Technical Details
- Dependencies
- Contributing
- License
- Contact
The Physics Virtual Lab is an interactive web-based platform designed to simulate fundamental physics experiments through accurate, real-time simulations. This application provides students, educators, and physics enthusiasts with a virtual laboratory environment to explore and understand complex physics concepts without the need for physical equipment.
The platform features multiple experiments with adjustable parameters, real-time data visualization, and export capabilities, making it an excellent tool for both learning and teaching physics principles.
- Interactive Simulations: Real-time physics simulations with accurate calculations
- Multiple Experiments: Currently supports three core experiments with more to come
- Adjustable Parameters: Customize all variables to test different scenarios
- Data Visualization: Real-time graphing of experiment data
- Responsive Design: Works on desktop and mobile devices
- Modern UI: Clean, intuitive interface with interactive elements
- Data Export: Export experiment data for further analysis
- Fullscreen Mode: Focus on experiments without distractions
To run this project locally, follow these steps:
-
Clone the repository:
git clone https://github.com/unitaryiron/gravitygrid.git cd gravitygrid -
The project requires no server-side components and can be opened directly in a browser. However, for best results:
- Use a modern web browser (Chrome, Firefox, Edge, or Safari)
- Ensure JavaScript is enabled
- For local development, you may want to use a simple HTTP server:
python -m http.server 8000Then open http://localhost:8000 in your browser
- Navigation:
- Use the header menu to navigate between sections
- The mobile-responsive menu automatically appears on smaller screens
- Running Experiments:
- Select an experiment from the "Available Experiments" section
- Adjust parameters using the controls panel
- Click "Reset" to return to default settings
- Use "Fullscreen" for an immersive experience
- Data Analysis:
- View real-time graphs of experiment data
- Toggle between different data visualizations
- Export data for further analysis
Currently available experiments:
- Pendulum Motion
Adjustable parameters:
- Pendulum length
- Mass
- Gravity
- Initial angle
- Damping coefficient
- Projectile Motion
Adjustable parameters:
- Launch angle
- Initial velocity
- Projectile mass
- Air resistance
- Gravity
- Wave Interference
Adjustable parameters:
- Wave frequency
- Amplitude
- Wavelength
- Number of sources
- Phase difference
Frontend: HTML5, CSS3, JavaScript (ES6+)
Graphics: Canvas API for simulations and data visualization
Responsive Design: Flexbox and media queries
Fonts: Google Fonts (Roboto and Open Sans)
Icons: Font Awesome
Structure: Semantic HTML5 with clear section separation
This project uses the following external resources:
- Font Awesome – For icons
- Google Fonts – For typography
- CDNJS – For hosting external libraries
All dependencies are loaded via CDN; no package manager is required.
We welcome contributions to the Physics Virtual Lab!
To contribute:
- Fork the repository
- Create a new branch for your feature
git checkout -b feature/AmazingFeature
We welcome contributions to GravityGrid!
To contribute:
- Fork the repository
- Create a new branch for your feature:
git checkout -b feature/AmazingFeature
- Commit your changes:
git commit -m 'Add some AmazingFeature' - Push to the branch:
git push origin feature/AmazingFeature
- Open a Pull Request: Please ensure your code follows the existing style and includes appropriate documentation.
This project is licensed under the MIT License – see the LICENSE file for details.
For questions, suggestions, or support, please use the contact form in the application or reach out to:
Email: em-lijo@outlook.com GitHub: github.com/gravitygrid