Skip to content

tgraber4/OSS

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 

Repository files navigation

OSS (Objects in Space Simulator)

Objects in Space Simulator Video: https://www.youtube.com/watch?v=g-xs6bY9a7s

Overview

Objects in Space Simulator (OSS) is a 2D physics-based space simulator that allows users to create and experiment with custom planetary systems. Users can place planets, modify physical properties, and observe how gravitational forces affect motion in real time.

Built With

  • JavaScript, HTML, and CSS
  • Konva.js
  • Python
  • Flask

What It Does

OSS allows users to select planets or the Sun from a built-in object library and drag them into the simulation space. Each object can be customized by changing its mass, radius, velocity, and direction. Once the system is set up, users can start the simulation and watch orbital paths, flybys, and gravitational interactions unfold based on physics calculations.

Users can play and pause the simulation at any time, remove objects, or quickly start with preconfigured layouts to explore different scenarios.

Inspiration

The inspiration for this project came from viewing NASA websites that display real-time planetary data. While those visualizations were impressive, we wanted to explore what would happen if the system could be modified. OSS was created to allow users to freely change positions, masses, and velocities and observe how physics determines the outcome.

How We Built It

The frontend was built using Konva.js to handle 2D rendering, animations, and user interaction. The backend was written in Python to perform gravitational physics calculations. Flask was used to connect the frontend and backend, allowing object data and position updates to be exchanged in real time.

Running the Project

To run the backend locally, follow these steps.

Windows

cd backend
python -m venv venv
.\venv\Scripts\activate
pip install -r requirements.txt
flask run

macOS

cd backend
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python app.py

Then run the index.html file

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors