A template utilizing Refined Architect.
- Clone the repository.
- Update
README.md
:- Remove this explanation.
- Update the title.
- Update the build badge URL.
- Update Refined Architect when necessary:
- Search and replace the version number in the project.
- This should change the version in
settings.gradle.kts
and the GitHub actions.
- Update the URLs in
.github/CONTRIBUTING.md
. - Update the project name in
.github/workflows/publish-release.yml
. - Update the branch policies for
develop
:- Require a pull request before merging.
- Dismiss stale pull request approvals when new commits are pushed.
- Require status checks to pass before merging:
validate-commit-messages
validate-changelog
validate-branch-name
build
- Require branches to be up to date before merging.
- Require conversation resolution before merging.
- Do not allow bypassing the above settings.
- Set the tags on the GitHub repository.
- Set the custom repository properties on the GitHub repository.
- Set some GitHub repository settings:
- Only allow issues.
- Preserve this repository.
- Only allow merge commits.
- Allow auto-merge.
- Automatically delete head branches.
- Ensure that the workflows can create PRs and push to the repository:
- Under Fine-granted personal access tokens, change the repository access for "Gitflow push token".
- Under GitHub Actions secrets, change the repository access for the
GITFLOW_PUSH_TOKEN
secret.
- Create a
main
branch fromdevelop
as soon as you are ready. Apply the same branch policies fromdevelop
. - Start a "Draft release" workflow to start the release process.
- Create a project on Crowdin.
- Enable the localization status badge.
- Copy the
examples/crowdin.yml
file to the root directory ascrowdin.yml
.- Configure the project identifier and source translation file location.
- Add the Crowdin badge to
README.md
fromexamples/crowdin-badge.md
. - On Crowdin, configure the GitHub integration:
- Choose "Source and translation files mode".
- Select the repository and the
develop
branch. - Service Branch Name should be
crowdin-translations
. - Configure the Sync Schedule to 24 hours.
- Create a project on SonarCloud.
- For Analysis Method, disable Automatic Analysis.
- In
build.gradle.kts
, uncomment thesonarQube
function. - Add SonarQube build badges to
README.md
fromexamples/sonarqube-badges.md
.
- Add a repository webhook for Discord announcements.
- Content type:
application/json
.
- Content type:
- Events:
- Branch or tag creation
- Forks
- Issue comments
- Issues
- Milestones
- Pull requests
- Pull request reviews
- Pushes
- Releases
- Stars
- Watches
- Create projects on CurseForge and Modrinth.
- Configure publishing in the
build.gradle.kts
file of the NeoForge and Fabric subprojects. - Add CurseForge and Modrinth download count badges to
README.md
fromexamples/curseforge-modrinth-badges.md
.
Clone the repository and import the Gradle project.
See CONTRIBUTING.md.
See SUPPORT.md.
See CHANGELOG.md.