Web Application for monitoring and managing multiplayer connections to Gama Server simulation.
The Simple WebPlatform is a versatile server designed to:
- Manage multiplayer connections 🥽 for seamless user experiences in collaborative environments.
- Monitor Gama Server simulations 🖥️ for data-driven insights.
Built with React, TypeScript, and Vite, this project leverages modern technologies for robust real-time communication.
- WebSocket Integration: Efficient real-time data streaming.
- Gama Server Monitoring: Track, communicate and pilot GAMA simulation.
- Multiplayer Management: Simplify connection handling in multiplayer games.
- Extensible Architecture: Built for scalability and custom workflows.
- Languages: TypeScript, JavaScript
- Frameworks: React, Node.js
- Build Tool: Vite
- Other Tools: ESLint, TailwindCSS, PostCSS
- Node.js >= v22
- npm or yarn
- To install Node.js, go to https://nodejs.org/en/download
- From here, select the operating system of your machine, and use either the command or the installer.
- if you selected the installer option, you can check Node and npm were installed correctly using the command:
node -v npm -v
this command should return the version of both tools.
-
Clone the repository:
git clone https://github.com/project-SIMPLE/simple.webplatform.git cd simple.webplatform -
Install dependencies:
npm install
-
Configure environment variables: -If you have a GAMA simulation VR game with its own generated .env: copy this
.envto the locationsimple.webplatform/.envin the web platform.OR
-If you do not have a generated .env, use the example one provided in the application:
-
Copy
.env.exampleto.env:cp .env.example .env
-
Update the values based on your setup, most notably the
EXTRA_LEARNING_PACKAGE_PATHto add an extra folder to scan for GAMA experiments, and the valuesGAMA_WS_PORTandGAMA_IP_ADRESSif you have a custom setup different from the default one. -
For more informations about the .env file, refer to the Documentation reference, that can be found (here)[https://doc.project-simple.eu/Technical/env_reference].
-
-
Start the development server:
npm start
Mind that while the GAMA Platform have to be running and accessible by the web platform, it can be started at any time, and will automatically connect if started after the webplatform.
Once the server is running:
- Access the interface at http://localhost:8000
- Connect it to your Gama simulations and observe real-time updates.
- Test multiplayer functionality with sample clients or your own game server.
Contributions are welcome! Follow these steps:
- Fork the repository.
- Create a new branch (
git checkout -b feature-branch). - Commit your changes (
git commit -m "Add feature"). - Push to your branch (
git push origin feature-branch). - Open a Pull Request.
This project is licensed under the AGPL-3.0 License. See the LICENSE file for details.
- Built with ❤️ by the Project SIMPLE team.
- Thanks to yume-chan for his awesome ya-webadb library
Feel free to open issues or discussions for questions and ideas! 😊