Skip to content

Free and open-source toolkit for building Persistent Browser-Based Games

License

Notifications You must be signed in to change notification settings

thiagomajesk/gems

Repository files navigation

What's GEMS?

GEMS (Gaming Ecosystem of Modular Shards) is a toolkit for building Persistent Browser-Based Games by providing an opinionated backbone that simplifies the creation of community-driven experiences. GEMS uses a data-driven approach that allows for customization via configuration and extensibility through scripts.

What's a PBBG?

A Persistent Browser-Based Game (PBBG) is an online game you can play in your web browser that keeps going even when you're not logged in. Players can make progress, gather resources, and influence the game world over time. This type of game combines elements of strategy and adventure, allowing you to return later and see how your actions have shaped the game. It’s designed for anyone looking for a fun and engaging experience without needing to be a hardcore gamer.

Development

This project is an Elixir application, built using the Phoenix framework. It uses Node.js for static asset management and PostgreSQL for persistence.

To start the application:

  • Run mix setup to install and setup dependencies
  • Start the server with mix phx.server or inside IEx with iex -S mix phx.server
  • Visit localhost:4000 from your browser.

Contributing

GEMS is free and open-source. We welcome contributions to GEMS! Here’s how you can get involved:

  1. Report issues: If you find a bug or have an idea for a new feature, please let us know by opening an issue or discussion in the project's repository.

  2. Code contributions: You can fork the repository, make your changes, and submit a pull request. To get started, take a look at our contribution guidelines

  3. Help with docs: If you notice parts of the documentation that can be improved or want to create new guides, your contributions are welcome!

  4. Share your feedback: Your thoughts are important! Tell us about your experiences and suggestions to help us improve GEMS.

  5. Join the community: Participate in discussions, help other users, and share projects you’ve created using GEMS. Together, we can grow a supportive community.

License

GEMS is distributed under the AGPL (Affero General Public License) to keep the source code open and transparent. This license ensures that the software remains freely available for anyone to use, modify, and share, while also requiring that any derivative works provide the same freedoms. If you don't know what the AGPL license is start here.

TLDR; The AGPL license is a strong copyleft license that ensures the software's source code, including any modifications or improvements made to the original code, remains open and available to everyone.

Why AGPL?

We believe that licensing GEMS under the AGPL is the right choice to protect the project against bad actors. It ensures that while our code is available for anyone to use, any improvements made by third parties come back to benefit the whole community. This way, we can all build on each other's work and keep GEMS growing and getting better.

About

Free and open-source toolkit for building Persistent Browser-Based Games

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages