This is a submission for the DEV Weekend Challenge: Community
I built VirtuLab for students who struggle not because they lack ability, but because they lack access.
In many colleges, especially underprivileged institutions and rural campuses, physics and electrical labs are limited by shared equipment, outdated apparatus, and tight time slots. Students often get one short session to complete an experiment. If a circuit is wired incorrectly or a setup fails, there is rarely time to restart.
For underprivileged students, the gap is wider. There is no personal lab kit at home. No private coaching. No extra practice outside scheduled hours. Practical exams then become exercises in memorizing steps instead of understanding systems.
VirtuLab was built to give them something most never truly get: repetition without restriction.
What I Built
VirtuLab is a browser-based virtual physics and electrical laboratory that simulates experimentation as a dynamic system, not a fixed animation.
It contains three major environments:
3D Motion and Optics Lab
Students can experiment with pendulums, springs, lenses, and Newtonian motion. Parameters like mass, length, angle, and force can be adjusted in real time, with measurements updating instantly.
2D Circuit Builder
A drag-and-drop circuit workspace where students connect batteries, resistors, LEDs, and other components using precise wire drawing. Circuits behave based on real topology, not visual shortcuts.
Astronomy Lab
A fully interactive celestial mechanics environment including:
- Solar System simulation to explore planetary orbits and gravitational interactions
- N-body gravity simulation where users can observe multi-body gravitational dynamics
- Orbital mechanics experiments to study satellite trajectories and escape velocities
- Tidal force visualization to understand gravitational gradients and Roche limits
Students can modify mass, distance, and velocity to observe how orbital paths evolve. This makes gravitational equations observable instead of abstract.
Each environment includes real-time measurement feedback and built-in conceptual explanations to bridge simulation behavior with theory.
Authentication is handled through Appwrite, allowing students to securely access and continue experiments.
What Makes It Different
VirtuLab treats simulations as computational systems, not animations.
In the Circuit Builder, every wire connection is translated into a graph-based internal model. Current and voltage are calculated from actual network topology. If a student leaves a circuit incomplete, it fails realistically.
In the Motion Lab, oscillation periods and forces are recalculated dynamically as parameters change. Nothing is pre-rendered.
In the Astronomy Lab, gravitational interactions are computed continuously. When a student increases planetary mass or modifies initial velocity, orbital paths shift according to gravitational equations, not scripted motion.
Students are not watching outcomes. They are shaping them.
For students with limited lab exposure, this builds intuition instead of dependency on memorized procedures.
Demo
Live Demo:
https://virtulab.appwrite.network/
GitHub Repository:
https://github.com/joyston602-rgb/Virtulab
Example scenario:
A student logs in and opens the Circuit Builder.
They place a battery, resistor, and LED.
They connect terminals carefully.
If the circuit is valid, the LED responds immediately based on calculated current.
If they misconnect a wire, nothing happens.
They adjust resistance. Brightness changes in real time.
They disconnect a node. The system recalculates instantly.
In the Astronomy Lab, they increase a planet’s mass and watch orbital paths tighten due to stronger gravitational pull. They increase initial velocity and observe escape trajectories form.
Cause and effect becomes visible.
Screenshots
Why This Matters
Educational inequality is not only about access to books. It is about access to experimentation.
Students from underprivileged backgrounds often work harder with fewer opportunities to practice. VirtuLab gives them a digital lab bench that does not close after one hour.






Top comments (0)