{"id":14529625,"url":"https://github.com/revanced/revanced-api","last_synced_at":"2026-02-20T01:01:14.396Z","repository":{"id":159531176,"uuid":"634353756","full_name":"ReVanced/revanced-api","owner":"ReVanced","description":"🚀 API server for ReVanced","archived":false,"fork":false,"pushed_at":"2026-02-19T17:19:59.000Z","size":1473,"stargazers_count":162,"open_issues_count":9,"forks_count":35,"subscribers_count":8,"default_branch":"main","last_synced_at":"2026-02-19T20:46:20.922Z","etag":null,"topics":["api","kotlin","revanced"],"latest_commit_sha":null,"homepage":"https://api.revanced.app","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ReVanced.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"github":"ReVanced","open_collective":"ReVanced","custom":["https://revanced.app/donate"]}},"created_at":"2023-04-29T21:02:25.000Z","updated_at":"2026-02-01T22:53:00.000Z","dependencies_parsed_at":"2023-12-25T21:01:40.018Z","dependency_job_id":"74d84809-d269-4f70-86f9-b9b690869641","html_url":"https://github.com/ReVanced/revanced-api","commit_stats":null,"previous_names":[],"tags_count":38,"template":false,"template_full_name":null,"purl":"pkg:github/ReVanced/revanced-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ReVanced%2Frevanced-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ReVanced%2Frevanced-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ReVanced%2Frevanced-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ReVanced%2Frevanced-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ReVanced","download_url":"https://codeload.github.com/ReVanced/revanced-api/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ReVanced%2Frevanced-api/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29637915,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-19T22:32:43.237Z","status":"ssl_error","status_checked_at":"2026-02-19T22:32:38.330Z","response_time":117,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","kotlin","revanced"],"created_at":"2024-09-05T00:01:01.266Z","updated_at":"2026-02-20T01:01:14.374Z","avatar_url":"https://github.com/ReVanced.png","language":"Kotlin","readme":"\u003cp align=\"center\"\u003e\n  \u003cpicture\u003e\n    \u003csource\n      width=\"256px\"\n      media=\"(prefers-color-scheme: dark)\"\n      srcset=\"assets/revanced-headline/revanced-headline-vertical-dark.svg\"\n    \u003e\n    \u003cimg \n      width=\"256px\"\n      src=\"assets/revanced-headline/revanced-headline-vertical-light.svg\"\n    \u003e\n  \u003c/picture\u003e\n  \u003cbr\u003e\n  \u003ca href=\"https://revanced.app/\"\u003e\n     \u003cpicture\u003e\n         \u003csource height=\"24px\" media=\"(prefers-color-scheme: dark)\" srcset=\"assets/revanced-logo/revanced-logo.svg\" /\u003e\n         \u003cimg height=\"24px\" src=\"assets/revanced-logo/revanced-logo.svg\" /\u003e\n     \u003c/picture\u003e\n   \u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;\n   \u003ca href=\"https://github.com/ReVanced\"\u003e\n       \u003cpicture\u003e\n           \u003csource height=\"24px\" media=\"(prefers-color-scheme: dark)\" srcset=\"https://i.ibb.co/dMMmCrW/Git-Hub-Mark.png\" /\u003e\n           \u003cimg height=\"24px\" src=\"https://i.ibb.co/9wV3HGF/Git-Hub-Mark-Light.png\" /\u003e\n       \u003c/picture\u003e\n   \u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;\n   \u003ca href=\"http://revanced.app/discord\"\u003e\n       \u003cpicture\u003e\n           \u003csource height=\"24px\" media=\"(prefers-color-scheme: dark)\" srcset=\"https://user-images.githubusercontent.com/13122796/178032563-d4e084b7-244e-4358-af50-26bde6dd4996.png\" /\u003e\n           \u003cimg height=\"24px\" src=\"https://user-images.githubusercontent.com/13122796/178032563-d4e084b7-244e-4358-af50-26bde6dd4996.png\" /\u003e\n       \u003c/picture\u003e\n   \u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;\n   \u003ca href=\"https://reddit.com/r/revancedapp\"\u003e\n       \u003cpicture\u003e\n           \u003csource height=\"24px\" media=\"(prefers-color-scheme: dark)\" srcset=\"https://user-images.githubusercontent.com/13122796/178032351-9d9d5619-8ef7-470a-9eec-2744ece54553.png\" /\u003e\n           \u003cimg height=\"24px\" src=\"https://user-images.githubusercontent.com/13122796/178032351-9d9d5619-8ef7-470a-9eec-2744ece54553.png\" /\u003e\n       \u003c/picture\u003e\n   \u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;\n   \u003ca href=\"https://t.me/app_revanced\"\u003e\n      \u003cpicture\u003e\n         \u003csource height=\"24px\" media=\"(prefers-color-scheme: dark)\" srcset=\"https://user-images.githubusercontent.com/13122796/178032213-faf25ab8-0bc3-4a94-a730-b524c96df124.png\" /\u003e\n         \u003cimg height=\"24px\" src=\"https://user-images.githubusercontent.com/13122796/178032213-faf25ab8-0bc3-4a94-a730-b524c96df124.png\" /\u003e\n      \u003c/picture\u003e\n   \u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;\n   \u003ca href=\"https://x.com/revancedapp\"\u003e\n      \u003cpicture\u003e\n         \u003csource media=\"(prefers-color-scheme: dark)\" srcset=\"https://user-images.githubusercontent.com/93124920/270180600-7c1b38bf-889b-4d68-bd5e-b9d86f91421a.png\"\u003e\n         \u003cimg height=\"24px\" src=\"https://user-images.githubusercontent.com/93124920/270108715-d80743fa-b330-4809-b1e6-79fbdc60d09c.png\" /\u003e\n      \u003c/picture\u003e\n   \u003c/a\u003e\u0026nbsp;\u0026nbsp;\u0026nbsp;\n   \u003ca href=\"https://www.youtube.com/@ReVanced\"\u003e\n      \u003cpicture\u003e\n         \u003csource height=\"24px\" media=\"(prefers-color-scheme: dark)\" srcset=\"https://user-images.githubusercontent.com/13122796/178032714-c51c7492-0666-44ac-99c2-f003a695ab50.png\" /\u003e\n         \u003cimg height=\"24px\" src=\"https://user-images.githubusercontent.com/13122796/178032714-c51c7492-0666-44ac-99c2-f003a695ab50.png\" /\u003e\n     \u003c/picture\u003e\n   \u003c/a\u003e\n   \u003cbr\u003e\n   \u003cbr\u003e\n   Continuing the legacy of Vanced\n\u003c/p\u003e\n\n# 🚀 ReVanced API\n\n![GitHub Workflow Status (with event)](https://img.shields.io/github/actions/workflow/status/ReVanced/revanced-api/release.yml)\n![AGPLv3 License](https://img.shields.io/badge/License-AGPL%20v3-yellow.svg)\n\nAPI server for ReVanced.\n\n## ❓ About\n\nReVanced API is a server that is used as the backend for ReVanced.\nReVanced API acts as the data source for [ReVanced Website](https://github.com/ReVanced/revanced-website) and\npowers [ReVanced Manager](https://github.com/ReVanced/revanced-manager)\nwith updates and ReVanced Patches.\n\n## 💪 Features\n\nSome of the features ReVanced API include:\n\n- 📢 **Announcements**: Post and get announcements\n- ℹ️ **About**: Get more information such as a description, ways to donate to,\n  and links of the hoster of ReVanced API\n- 🧩 **Patches**: Get the latest updates of ReVanced Patches, directly from ReVanced API\n- 👥 **Contributors**: List all contributors involved in the project\n\n## 🚀 How to get started\n\nReVanced API can be deployed as a Docker container or used standalone.\n\n## 🐳 Docker\n\nTo deploy ReVanced API as a Docker container, you can use Docker Compose or Docker CLI.  \nThe Docker image is published on GitHub Container registry,\nso before you can pull the image, you need\nto [authenticate to the Container registry](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry#authenticating-to-the-container-registry).\n\n### 🗄️ Docker Compose\n\n1. Create an `.env` file using [.env.example](.env.example) as a template\n2. Create a `configuration.toml` file using [configuration.example.toml](configuration.example.toml) as a template\n3. Create an `about.json` file using [about.example.json](about.example.json) as a template\n4. Create a `docker-compose.yml` file using [docker-compose.example.yml](docker-compose.example.yml) as a template\n5. Run `docker-compose up -d` to start the server\n\n### 💻 Docker CLI\n\n1. Create an `.env` file using [.env.example](.env.example) as a template\n2. Create a `configuration.toml` file using [configuration.example.toml](configuration.example.toml) as a template\n3. Create an `about.json` file using [about.example.json](about.example.json) as a template\n4. Start the container using the following command:\n   ```shell\n   docker run -d --name revanced-api \\\n    # Mount the .env file\n    -v $(pwd)/.env:/app/.env \\\n    # Mount the configuration.toml file\n    -v $(pwd)/configuration.toml:/app/configuration.toml \\\n    # Mount the patches public key\n    -v $(pwd)/patches-public-key.asc:/app/patches-public-key.asc \\\n    # Mount the static folder\n    -v $(pwd)/static:/app/static \\\n    # Mount the about.json file\n    -v $(pwd)/about.json:/app/about.json \\\n    # Mount the persistence folder\n    -v $(pwd)/persistence:/app/persistence \\\n    # Expose the port 8888\n    -p 8888:8888 \\\n    # Use the start command to start the server\n    -e COMMAND=start \\\n    # Pull the image from the GitHub Container registry\n    ghcr.io/revanced/revanced-api:latest\n   ```\n\n## 🖥️ Standalone\n\nTo deploy ReVanced API standalone, you can either use the pre-built executable or build it from source.\n\n### 📦 Pre-built executable\n\nA Java Runtime Environment (JRE) must be installed.\n\n1. [Download](https://github.com/ReVanced/revanced-api/releases/latest) ReVanced API to a folder\n2. In the same folder, create an `.env` file using [.env.example](.env.example) as a template\n3. In the same folder, create a `configuration.toml` file\n   using [configuration.example.toml](configuration.example.toml) as a template\n4. In the same folder, create an `about.json` file using [about.example.json](about.example.json) as a template\n5. Run `java -jar revanced-api.jar start` to start the server\n\n### 🛠️ From source\n\nA Java Development Kit (JDK) and Git must be installed.\n\n1. Run `git clone git@github.com:ReVanced/revanced-api.git` to clone the repository\n2. Copy [.env.example](.env.example) to `.env` and fill in the required values\n3. Copy [configuration.example.toml](configuration.example.toml) to `configuration.toml` and fill in the required values\n4. Copy [about.example.json](about.example.json) to `about.json` and fill in the required values\n5. Run `gradlew run --args=start` to start the server\n\n## 📚 Everything else\n\n### 📙 Contributing\n\nThank you for considering contributing to ReVanced API. You can find the contribution\nguidelines [here](CONTRIBUTING.md).\n\n### 🛠️ Building\n\nTo build ReVanced API, a Java Development Kit (JDK) and Git must be installed.  \nFollow the steps below to build ReVanced API:\n\n1. Run `git clone git@github.com:ReVanced/revanced-api.git` to clone the repository\n2. Run `gradlew build` to build the project\n\n## 📜 Licence\n\nReVanced API is licensed under the AGPLv3 licence. Please see the [licence file](LICENSE) for more information.\n[tl;dr](https://www.tldrlegal.com/license/gnu-affero-general-public-license-v3-agpl-3-0) you may copy, distribute and\nmodify ReVanced API as long as you track changes/dates in source files.\nAny modifications to ReVanced API must also be made available under the GPL along with build \u0026 install instructions.\n","funding_links":["https://github.com/sponsors/ReVanced","https://opencollective.com/ReVanced","https://revanced.app/donate"],"categories":["✅ Official"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frevanced%2Frevanced-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frevanced%2Frevanced-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frevanced%2Frevanced-api/lists"}