This is a bubbles UI, similar to the Apple Music bubble UI
bubbly.mp4
I have used react-native-game-engine and Matter.js to create this. You can create draggable bubbles with just RNGE library. But to provide physics(collision and stuff) you have to use Matter.js library. RNGE essentially provides an interface to include physics into the app. And physics is provided through Matter.js library.
App.js uses index.js file inside the entities folder, which uses bubbles and rect files. App.js also uses dragMechanism.js defined in Components folder as the logic part.
clone the repo using
git clone https://github.com/Don-George-Thayyil/bubbly.git
Then install and run using
npm install
npm start