T-Craft Platforms is a collaborative software organization working across games, developer tools, and the platforms that support them. Minecraft is an important part of our work, alongside other game software and infrastructure. We aim to keep projects open source whenever possible.
- Be respectful, constructive, and professional.
- Assume good intent and communicate openly.
- Follow common open-source etiquette.
- Create repositories as
privateorinternalfirst if you are unsure. - To mark a repository as internal only (visible only to members):
- Mark the repository as
private. - Add the
@Everyoneteam with at leastReadaccess.
- Mark the repository as
- Set a repository to public only if it is intended for open-source release. Never make a repository public if it uses proprietary software or depends on private or demo environments.
- If a repository's purpose cannot be justified, organization administrators may archive or remove it at their discretion.
- Do not migrate repositories to or away from T-Craft Platforms without prior approval from the relevant code owners and organization administrators.
- Pushing directly to
mainis discouraged, especially on public repositories.- For public and internal repositories, protecting at least the default branch is highly recommended.
- For private repositories, branch protection is the responsibility of the repository maintainers, but is also highly recommended.
- Use the GitHub Issues workflow:
- Create an issue.
- Create a branch linked to that issue.
- Open a pull request.
- Merge into
mainafter review.
- Use branch name prefixes whenever possible, such as:
feature/bug/security/
- Avoid loose or unnamed branches.
Use repository issues for detailed, specific feature requests or tasks. Always consider whether the work is limited to one repository or affects multiple repositories.
Use GitHub Projects (Kanban recommended) for planning and tracking.
Use Discussions for:
- Announcements
- Ideas and coarse feature requests
- Polls
- Questions and answers
The following screenshots illustrate how to assign an issue to a project and create a branch for an issue.