Skip to content

Contributing

Want to contribute to Fibbo ? We would love to have you on board !

Here are some ways you can help.

Reporting bugs

If you encounter any issues while using Fibbo, please let us know by opening an issue on GitHub.

Before opening an issue, please make sure to :

  • Check if the issue has already been reported by searching the existing issues on GitHub.
  • Provide as much information as possible, such as the steps to reproduce the issue, the expected behavior, and the actual behavior.
  • If possible, provide a minimal example that reproduces the issue. It could be a link to a repository, a code snippet or an online playground (StackBlitz, CodeSandbox, etc.).

Share ideas

If you have any ideas for new features, improvements, or anything else, please let us know by opening a discussion on GitHub.

As Fibbo is still in its early stages, we are open to any suggestions that could help us improve the engine and make it more user-friendly.

Game engines are complex tools, and game developers have tons of different needs, so your feedback is crucial to us.

Contributing code

If you want to contribute code to Fibbo, you can do so by forking the repository and opening a pull request once you're done.

Preferrably, you should follow these steps :

  • Choose an issue to work on from the project board (or the issues list directly, but make sure it's planned and not already in progress).
  • Fork the repository and clone it on your machine.
  • Commit your changes using conventional commits.
  • Open a pull request that targets the main branch of the main repository.

TIP

If you're a beginner, do not hesitate to ask for help in the issue you're working on. We will be happy to guide you through the process.

It's okay to make mistakes, as long as you're willing to learn from them. We all started somewhere, and we're here to help you grow.

Architecture

Some information about the architecture of Fibbo might help you understand how the engine is structured and how you can contribute to it.

Fibbo is a monorepo managed with Nx. It is composed of multiple packages, each with its own responsibility.

Here are the main packages :

For now, here is what the tech stack looks like :

  • Game stuff
  • Tooling
    • Nx for monorepo management
    • unbuild for building the packages
    • Vite for the playgrounds + building the devtools
    • VitePress for the documentation
    • Vitest for testing
    • TypeDoc for the API Reference part of the documentation
    • ESLint for linting