This is a proposal that is being tried currently. It may change or be retracted in the future if it doesn't meet the expectations.

GDevelop teams

GDevelop has multiple areas where users can contribute. GDevelop teams allow a contributor to specialize in one or more sectors of GDevelop's development and maintenance. This document explains the rules and concepts associated with a GDevelop team.

Team membership is not required when contributing to GDevelop, but it is recommended to ultimately join one if you contribute a lot to one field of development.

Concepts

Team

A team is a group of contributors focused on a specific contribution type for GDevelop. People that want to contribute to GDevelop can join a team to get help and guidance for that contribution type, additional permissions to allow them to contribute effectively, peer review, and discuss the future development of that field.

Anyone can join and leave a team whenever they want to, unless the team's leader has a good reason not to accept someone in (for example, the moderation team can refuse someone shady from joining since moderation permissions are dangerous).

A team usually has multiple leaders, but may also have only one. If all team leaders of a team leave the team, the GDevelop company is in charge of the team until a new leader is found.

Each team is also given an announcement channel on discord, only usable by the team leaders, to post feedback on what has been done recently (like extension additions in the case of the extension team for example).

The main goals of a team are to:

  • Allow for organization and communication between contributors in a field of contribution in order to prevent duplicate work.
  • Allow for all contributors of a specific area to be mentioned on the forum or discord to be notified of bugs in extensions, to get asked for help about contributing to their field of contribution, and to discuss the current state of their field of contribution.
  • Having a list of people involved in a field of development of GDevelop to discuss the evolution of that field of development with.
  • Put the people that contributed a lot to a part of GDevelops ecosystem forward as important community members.
  • Work on making it easier to contribute to their field of contribution.
  • Track what work has been done more effectively to provide feedback to the community concerning the new additions and changes.

Team leaders

A team leader is a very high position in the GDevelop community, and should therefore only be appointed to the well-known and trusted community members.

A team leader is responsible for administrating access and permissions for the resources the team has access to (for example, an extensions team leader would have administrative access to the extensions repository). The team leader is also responsible for organizing the work between the members and posting updates on the work done by the team.

A team leader can only be appointed by the GDevelop company. If a team leader gets inactive without prior warning for more than 3 months, their position will be removed as they will be considered as either unable or not willing to contribute to GDevelop anymore.

Team members

Anyone can ask at any time a team leader to join a team. A team leader can reach out to propose to someone to join as well. The team leader is free to refuse the request if they have a valid reason not to want that person in their team. To join, a team member needs to have an account on the GDevelop discord and forum.

Once a team member joins, the GDevelop company is responsible for giving them the team's role on discord and adding them to the team's group on the forum. The team leader that accepted the request to join should contact a member of it for the roles to be assigned.

As a team member, you have no direct responsibilities, but you are expected to

  • Participate in discussions about the team or field of contribution covered by the team
  • Contribute to the field of contribution covered by the team
  • Be somewhat active on either Discord, the forum, or Github

A team leader may give additional permissions or kick a team member out of the team if they have a good reason to, like not meeting the expectations listed above.

Teams list

No team nor members/leaders are confirmed except for the extension team, which is currently in trial. The other teams, members and leaders are just suggestions as of now.

TEMPLATE FOR NEW TEAMS ### <TEAM_NAME> team #### Description My description. #### Requirements for contributing/joining - Be cool - Be committed to GDevelop #### Team leaders - <TEAM_LEADER> #### Team members - Team - Members #### Responsibilities - Do X - Do Y

🧩 Extensions team

🖼️ Description

GDevelop has a lot of downloadable semi-official extensions made with events. This team takes care of creating those extensions, peer reviewing community submissions and maintaining the extensions.

🙋 Requirements for contributing/joining

  • Knowing the extensions best practices (to create a high-quality extension)
  • Knowing how to write events in GDevelop (to be able to work with extensions)
  • Knowing how to open an issue on GitHub (to submit an extension)
  • (Optional) Knowing JavaScript (to work on extensions that use JavaScript events)
  • (Optional) Knowing how to use git (to repair a broken submission if the bot does a mistake)

🚩 Team leaders

👥 Team members

  • D8H
  • add00
  • VegeTato

🙇 Responsibilities

🔐 Extra permissions

  • (Leader only) Push access to the main branch on the GitHub repository (modify the “live” extension repository)/merging pull requests to it.
  • Push access to all branches that are not the main one in the GitHub repository (for collaboration or changing someone else's extension as part of the review process).

Asset store team

Description

The GDevelop assets store is not magic: the assets need to be added by community members in the correct format with the correct metadata, and their licenses need to be checked. This team takes care of this, by submitting packs of assets with their license checked and all files and metadata laid out correctly to the asset store.

Requirements for contributing/joining

  • Knowing how to use your system file explorer (to create the asset pack)
  • Knowing how to open an issue on GitHub (to submit the asset pack)

Team leaders

  • Leo Red

Team members

  • None

Responsibilities

  • Check licenses of assets for the asset store
  • Add new asset packs on the asset store
  • Ensure the metadata is entered correctly for each asset

Moderation team

Description

GDevelop has multiple groups for the community to talk and share about GDevelop, but big groups like those always come with some dangers: they will be targetted by spam and scam bots, trolls will come and hurt the community, conflicts may arise between community members, etc. Moderators check the conversations on the group to keep it a nice and cool place, by calming down heated discussions and removing troublemakers/bots from the group if necessary.

Requirements for contributing/joining

  • Knowing the moderation tools available (kicks, bans, warns, logs, etc) (for efficient moderation)
  • Not being someone who likes to argue (to calm down arguments instead of joining them)
  • Being often online (to be able to react fast in case of a spammer before too much damage is done)

Team leaders

Team members

  • arthuro555
  • Bouh
  • Jurfix
  • Greench
  • 4ian

Responsibilities

  • Keep track of suspicious users
  • Ensure the respect of the rules
  • Calm down heated arguments
  • Ban spam/scam bots and trolls

Examples team

Description

This team is about making and maintaining examples for GDevelop.

Requirements for contributing/joining

  • Knowing how to use all of GDevelop (since an example can use any feature from GDevelop)

Team leaders

Team members

  • None

Responsibilities

Communication team

Description

This team is about marketing of GDevelop and communicating with it's target audience, and within the community itself

Requirements for contributing/joining

  • Being a serious and trustworthy person (since we do not want GDevelop to get a bad image because of 1 person)
  • Be a long time community member (since being the public figure of GDevelop requires trust)
  • Being somewhat active on most social media (to be able to use them and post on all of them)
  • (Optional) Know Markdown and Git (as those technologies are necessary to make blog posts)

Team leaders

  • Bouh

Team members

Responsibilities

  • Manage the GDevelop accounts on different platforms (Twitter, Instagram, TikTok, etc..)
  • Advertise GDevelop to the target audience