Flutter made Physics Easy!!!

Providing visuals aids like graphs, calculator, ray diagrams to learn physics in easy way

Ayush P Gupta
3 min readFeb 13, 2020



I always have a keen interest in applying physics concepts. Whether in my daily life or when i code, i always think how i can make Physics more easy to understand.

Because i had an expertise with Flutter SDK used for mobile application development i thought why not make some valuable stuff for understanding physics using flutter?

With that the idea, visual understanding of physics concepts website was born.


There are few complex topics which are studied by a science student in his physics intermediate classes namely Wave Motion, Optics, Errors.

Wave motion chapter in physics describe how we can express a WAVE motion MATHMATICALLY ie simply using mathematical equations.

Optics describes the behaviour of light under Mirrors, Lens.

Error Analysis is another unit of physics dealing with error calculations in measurement.

Coding into Flutter

With a strong background in Physics i decided to code some complex concepts of these chapters to understand them better visually with animations.
For this i chose Flutter SDK to build a website related to all this.

Wave Motion

An example of stationary waves

Mainly in this i developed 4–6 animating graphs related to sinusoidal waves, superposition of waves, stationary waves, beat frequency etc. These topics are little difficult to understand in theory hence these visuals will help students to understand them better.

Sinusoidal waves, Out of phase waves
Beat Frequency

Here’s how a wave looked like in my Flutter code:


Ray Optics

Lens formula validation

Lens formula is one of the famous topics in optics. Here for convex and concave lens light behaves differently and hence the image formed of objects have different characteristics.

Convex lens
Concave Lens

By moving the slider one changes the object distance from lens and hence changing the image.

Here’s how a ray diagram in flutter looks like:


Error Analysis

Here i used one of my famous flutter package json_table. I used my table to show error calculations.


Finally i would say coding all this using Flutter was very easy. I used custom painter classes for wave drawing, Axes etc. All the above things are displayed using codings. With all these stuffs i certainly believe i have tried made learning physics a lot easy.

Website: https://physics-concepts.firebaseapp.com/
Github: https://github.com/apgapg/flutter_physics_concepts

Whola! Both you and I learnt something new today. Congrats
Clap! Clap! Clap!

Connect with me:
LinkedIn: https://www.linkedin.com/in/ayushpgupta/
Github: https://github.com/apgapg



Ayush P Gupta

NodeJs | VueJs | Kubernetes | Flutter | Linux | DIY person