You should implement energy minimization or rather use openbabel&#x27;s energy minimization functions. Doing SteepestDescentTakeNSteps every couple of frames and updating atom positions should give you some neat behavior. Pretty cool to see openbabel running in the browser.