https://github.com/ReVanced/revanced-manager-downloader-template
👋🔌 Template repository for ReVanced Manager downloader
https://github.com/ReVanced/revanced-manager-downloader-template
android downloader kotlin plugin revanced revanced-manager template
Last synced: about 2 months ago
JSON representation
👋🔌 Template repository for ReVanced Manager downloader
- Host: GitHub
- URL: https://github.com/ReVanced/revanced-manager-downloader-template
- Owner: ReVanced
- License: gpl-3.0
- Created: 2024-07-20T18:49:33.000Z (9 months ago)
- Default Branch: dev
- Last Pushed: 2025-03-01T02:45:44.000Z (2 months ago)
- Last Synced: 2025-03-01T17:53:11.649Z (about 2 months ago)
- Topics: android, downloader, kotlin, plugin, revanced, revanced-manager, template
- Language: Kotlin
- Homepage: https://revanced.app
- Size: 212 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
- Awesome-ReVanced - Manager Plugin Template
README
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Continuing the legacy of Vanced# 👋🔌 ReVanced Manager downloader template

Template repository for ReVanced Manager downloader plugins.
## ❓ About
This is a template to create a new ReVanced Manager downloader repository. An example implementation is included.
## 🚀 Get started
To start using this template, follow these steps:
1. [Create a new repository using this template](https://github.com/new?template_name=revanced-manager-downloader-template&template_owner=ReVanced)
2. Set up the [build.gradle.kts](build.gradle.kts) file (Specifically, the [package nme](build.gradle.kts#L21).
3. Update dependencies in the [libs.versions.toml](gradle/libs.versions.toml) file
4. [Create a pass-phrased GPG master key and subkey](https://mikeross.xyz/create-gpg-key-pair-with-subkeys/)
1. Add the private key as a secret named [GPG_PRIVATE_KEY](.github/workflows/release.yml#L51) to your repository
2. Add the passphrase as a secret named [GPG_PASSPHRASE](.github/workflows/release.yml#L52) to your repository
3. Add the fingerprint of the GPG subkey as a variable named [GPG_FINGERPRINT](.github/workflows/release.yml#L53)
to your repository
5. [Generate a keystore](https://developer.android.com/studio/publish/app-signing#generate-key)
1. Add the Base64 encoded key store as a secret named [KEYSTORE](.github/workflows/release.yml#L57) to your repository
2. Add the keystore password as a secret named [KEYSTORE_PASSWORD](.github/workflows/release.yml#L62) to your repository
3. Add the keystore entry alias as a secret named [KEYSTORE_ENTRY_ALIAS](.github/workflows/release.yml#L63) to your repository
4. Add the keystore entry password as a secret named [KEYSTORE_ENTRY_PASSWORD](.github/workflows/release.yml#L64) to your repository
7. Set up the [README.md](README.md) file[^1] (e.g, title, description, license, summary),
the [issue templates](.github/ISSUE_TEMPLATE)[^2] and the [contribution guidelines](CONTRIBUTING.md)[^3]🎉 You are now ready to develop and release a ReVanced Manager downloader!
[^1]: [Example README.md file](https://github.com/ReVanced/revanced-manager/blob/main/README.md)
[^2]: [Example issue templates](https://github.com/ReVanced/revanced-manager/tree/main/.github/ISSUE_TEMPLATE)
[^3]: [Example contribution guidelines](https://github.com/ReVanced/revanced-manager/blob/main/CONTRIBUTING.md)## 🧑💻 Usage
To develop and release ReVanced Manager downloader using this template, some things need to be considered:
- Development starts in feature branches. Once a feature branch is ready, it is squashed and merged into the `dev` branch
- The `dev` branch is merged into the `main` branch once it is ready for release
- Semantic versioning is used to version ReVanced Manager downloader.
- Semantic commit messages are used for commits
- Commits on the `dev` branch and `main` branch are automatically released
via the [release.yml](.github/workflows/release.yml) workflow, which is also responsible for generating the changelog
and updating the version of ReVanced Manager downloader. It is triggered by pushing to the `dev` or `main` branch.
The workflow uses the `publish` task to publish the release.
- The `publish` task depends on the `assembleRelease` task, so it will be run automatically when publishing a release.## 📚 Everything else
### 📙 Contributing
Thank you for considering contributing to ReVanced Manager downloader.
You can find the contribution guidelines [here](CONTRIBUTING.md).### 🛠️ Building
To build ReVanced Manager downloader template, a Java Development Kit (JDK) and Git must be installed.
Follow the steps below to build ReVanced Manager downloader template:1. Run `git clone [email protected]:ReVanced/revanced-manager-downloader-template.git` to clone the repository
2. Run `gradlew assembleRelease` to build the project> [!NOTE]
> If the build fails due to authentication, you may need to authenticate to GitHub Packages.
> Create a PAT with the scope `read:packages` [here](https://github.com/settings/tokens/new?scopes=read:packages&description=ReVanced) and add your token to ~/.gradle/gradle.properties.
>
> Example `gradle.properties` file:
>
> ```properties
> gpr.user = user
> gpr.key = key
> ```## 📜 Licence
ReVanced Manager downloader template is licensed under the GPLv3 licence.
Please see the [license file](LICENSE) for more information.
[tl;dr](https://www.tldrlegal.com/license/gnu-general-public-license-v3-gpl-3) you may copy, distribute
and modify ReVanced Manager downloader template as long as you track changes/dates in source files.
Any modifications to ReVanced Manager downloader template must also be made available under the GPL,
along with build & install instructions.