Movex

0

State Syncing Strategy for Multiplayers

Miscellaneous

Movex Logo

Serverless Multiplayer Infrastructure for JavaScript Game Developers

Build multiplayer games without worrying about server-side logic, backend infrastructure, or networking. Movex takes care of it allβ€”works with React out of the box!

NPM version License contributions welcome Tests Type Script Compilation

🧐 Why Movex

Movex cuts your development effort in half and helps you ship faster by abstracting away backend logic and server-side complexity! πŸŽ‰

With its unique approach and robust set of features, Movex gives you the freedom to focus solely on the front-end while still maintaining full control over the Game Logic, UI/UX, and Data Authority.

⭐️ Features:

  • Serverless: Movex manages the network logic, state-sharing protocols, server deployment and maintenance, along with various other essential functionalities. Learn more.
  • Authoritative Server: By keeping the data reconciliation logic on the server side, Movex keeps bad actors away, ensuring the integrity of your application. Learn more.
  • Real-time synchronization: By utilizing the Observable Pattern to monitor state changes in registered resources Movex promptly notifes the UI layer. See more
  • Private State: Movex allows parts of the shared state to remain private to specific users, ensuring that sensitive information is kept secure. See more
  • Efficient Data Flow: Movex ensures that only the minimum required data is transmitted with each update, optimizing performance. (See: Deterministic Action Propagation)

πŸ’œ Who uses Movex?

Chessroulette | Conect. Play. Stream

πŸš€ Examples & Demos

πŸ§™πŸ½β€β™‚οΈ How Movex works

Movex follows the Flux Pattern locally to respond to UI changes. It then employs the Deterministic Propagation Method to synchronize state changes with the Global State(aka Master State) and all peers in the network. Learn More.

Movex Logo

πŸ‘©β€πŸ’» Getting Started

1. Install It

yarn add movex; yarn add --dev movex-service

2. Create the Movex Config File

export default {
  resources: {},
};

3. Start Movex in Dev Mode

npx movex dev

4. Next Steps

To continue with the next steps see Get Started Docs.

Documentation

Visit the Docs to get started with Movex.

πŸ™ Contributing

First off, thank you for showing an interest in contributing to the Movex project! We have created a Contributing Guide that will show you how to setup a development environment and how to open pull requests and submit changes.

  • πŸš€ Want to participate in #hacktoberfest? We have a selection of #hactoberfest issues.

  • Want to help with the code? Please check out our Good First Issue section.

  • Don't wanna' code? Any feedback is welcome and greatly appreciated so please don't hesitate to open an issue.

  • For any other help, you can write us on our Discord, Twitter or just open an issue!


Before You Contribute, make sure your commits are signed using SSH, GPG os S/MIME

This is very important for #hacktoberfest so Github can trace your contribution correctly. Learn more about signing commits.

ALSO: Please see our Requirements For Opening PRs.

πŸ›‘οΈ License

Movex is licensed under the MIT License - see the LICENSE file for details.

πŸ‘½ Community

Join our Discord

πŸ₯· Thanks To All Contributors

Movex wouldn't be the same without you, so thank you all for your amazing efforts and contribution!

Contributors

Made with contrib.rocks.