Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/im-rises/nbody-simulator-react-p5-website

N-Body simulation package demo made in React (bruteforce)
https://github.com/im-rises/nbody-simulator-react-p5-website

gravity javascript n-body nbody nbody-simulation package react simulation typescript

Last synced: 8 days ago
JSON representation

N-Body simulation package demo made in React (bruteforce)

Awesome Lists containing this project

README

        

# nbody-simulator-react-p5


reactLogo
javascriptLogo
scssLogo
cssLogo
cssLogo

## Description

This is a simple demo of the `nbody-simulator-react-p5` package. It is a nbody simulator made with React and
p5.js.

The bodies are attracted to each other and by the mouse cursor on click.

## 🚀🚀[You can try it online from your browser](https://im-rises.github.io/nbody-simulator-react-p5-website/) 🚀🚀

## 🚀🚀 [The package is available on npm](https://www.npmjs.com/package/nbody-simulator-react-p5) 🚀🚀

> **Note**
> I also made a C++ version for WebGL2 using OpenGL ES 3.0. You can check it
> out [here](https://github.com/Im-Rises/nbody-simulator-webgl).

> **Note**
> I also made a version using Barnes-Hut algorithm. You can check it
> out [here](https://github.com/Im-Rises/nbody-simulator-barnes-hut-react-p5).

## Screenshots

| Screenshot 1 | Screenshot 2 |
|---------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------|
| ![Screenshot1](https://github.com/Im-Rises/nbody-simulator-react-p5/assets/59691442/59dbae4f-bfe8-4923-ad06-cc6abf07db13) | ![Screenshot2](https://github.com/Im-Rises/nbody-simulator-react-p5/assets/59691442/ec62857c-fb48-4049-8a8c-32a0ccc5fa91) |

## Demo video

https://github.com/Im-Rises/nbody-simulator-react-p5/assets/59691442/20bc593e-7bd0-4d60-9470-a8caed1a45bd

## GitHub Actions

[![Node.js CI](https://github.com/Im-Rises/nbody-simulator-react-p5-website/actions/workflows/node.js.yml/badge.svg?branch=main)](https://github.com/Im-Rises/nbody-simulator-react-p5-website/actions/workflows/node.js.yml)
[![ESLint](https://github.com/Im-Rises/nbody-simulator-react-p5-website/actions/workflows/eslint.yml/badge.svg?branch=main)](https://github.com/Im-Rises/nbody-simulator-react-p5-website/actions/workflows/eslint.yml)
[![CodeQL](https://github.com/Im-Rises/nbody-simulator-react-p5-website/actions/workflows/codeql.yml/badge.svg?branch=main)](https://github.com/Im-Rises/nbody-simulator-react-p5-website/actions/workflows/codeql.yml)
[![pages-build-deployment](https://github.com/Im-Rises/nbody-simulator-react-p5-website/actions/workflows/pages/pages-build-deployment/badge.svg)](https://github.com/Im-Rises/nbody-simulator-react-p5-website/actions/workflows/pages/pages-build-deployment)

The project is set up to run the following actions:

[//]: # (- pages-build-deployment : Builds the website and deploys it to GitHub Pages.)

- node.js.yml : Runs the tests for the Node.js project.
- eslint.yml : Runs the ESLint linter on the project.
- codeql.yml : Runs the CodeQL linter on the project.
- pages-build-deployment : Publish the website

## Libraries

React:

Xo:

ESLint:

GitHub gh-pages:

P5.js:

react-device-detect:

## Documentation

The Coding Challenge (math and physics):

P5.js:

P5.js React:

## Links

Check the source code
on [![github](https://user-images.githubusercontent.com/59691442/223556058-6244e346-8117-43cd-97c6-bf68611bf286.svg)](https://github.com/im-rises/nbody-simulator-react-p5)

Check the demo
on [![github](https://user-images.githubusercontent.com/59691442/223556058-6244e346-8117-43cd-97c6-bf68611bf286.svg)](https://github.com/im-rises/nbody-simulator-react-p5-website)

Check the package
on [![npm](https://user-images.githubusercontent.com/59691442/223556055-4e9ef014-79d4-4136-ac07-b837b49066c8.svg)](https://www.npmjs.com/package/nbody-simulator-react-p5)

## Contributors

Quentin MOREL :

- @Im-Rises
-

[![GitHub contributors](https://contrib.rocks/image?repo=Im-Rises/nbody-simulator-react-p5-website)](https://github.com/Im-Rises/nbody-simulator-react-p5-website/graphs/contributors)