mirror of
https://github.com/ReVanced/revanced-patches-template.git
synced 2026-01-10 05:16:19 +00:00
908ccaed876f0e9d182ef6c6d0da9349825278f9
👋🧩 ReVanced Patches template
This is a template for creating a new ReVanced Patches repository.
The repository can have multiple patches, and patches from other repositories can be used together.
For an example repository, see ReVanced Patches.
🚀 Get started
To start using this template, follow these steps:
- Create a new repository using this template
- Set up the build.gradle.kts file (Match the group of the project, manifest attributes, and the POM that will be published to yours)
- Update the dependencies in the libs.versions.toml file
- Add a secret to your repository named REPOSITORY_PUSH_ACCESS containing a GitHub access token with push access
- Set up the README.md file1 (e.g, title, description, license, summary of the patches that are included in the repository)
🎉 You are now ready to start creating patches!
🔘 Optional steps
You can also add the following things to the repository:
- Issue templates2
- Contribution guidelines3
- Documentation, if you want to publish your patches as a library4
🧑💻 Usage
In order to develop and release ReVanced Patches using this template, some things need to be considered:
- Development originates in feature branches. Once a feature branch is ready, it is squshed and merged into the
devbranch - The
devbranch is merged into themainbranch once it is ready for release - Semantic versioning is used for versioning ReVanced Patches. ReVanced Patches have a public API for other patches to use
- Semantic commit messages are used for commits
- Commits on the
devbranch andmainbranch are automatically released via the release.yml workflow, which is also responsible for generating the changelog and updating the version of ReVanced Patches. It is triggered by pushing to thedevormainbranch. The workflow uses thepublishtask to publish the release of ReVanced Patches - In order to build ReVanced Patches, that can be used on Android, the
generateBundletask needs to be run. Thepublishtask depends on thegenerateBundletask, so it will be run automatically when publishing a release.
Languages
Kotlin
73%
Java
27%