GitXplorerGitXplorer
R

revanced-api

public
107 stars
16 forks
6 issues

Commits

List of commits on branch main.
Unverified
6c8153ba987e1b883492261004a3faabe04b6c86

chore: Release v1.5.0-dev.1 [skip ci]

ssemantic-release-bot committed 2 months ago
Verified
e871b23210798723c34bce93c7567d8fbcf4e060

feat: Move spec url to versioned path

ooSumAtrIX committed 2 months ago
Unverified
e22ec16e40de2f8d279d2a39066129290c50b19d

chore: Release v1.4.0 [skip ci]

ssemantic-release-bot committed 2 months ago
Verified
440fbbc6c21609de30f3dc4e9c7409697593f51b

chore: Merge branch `dev` to `main` (#194)

ooSumAtrIX committed 2 months ago
Unverified
f74012993e2ee3ff00e53bde34fd3bef2ff1c502

chore: Release v1.4.0-dev.6 [skip ci]

ssemantic-release-bot committed 2 months ago
Verified
814d3c946e31068e12e3886aa8beb3238ef126ae

feat: Allow versioning by arbitrary path string

ooSumAtrIX committed 2 months ago

README

The README file for this repository.


                       

Continuing the legacy of Vanced

🚀 ReVanced API

GitHub Workflow Status (with event) AGPLv3 License

API server for ReVanced.

❓ About

ReVanced API is a server that is used as the backend for ReVanced. ReVanced API acts as the data source for ReVanced Website and powers ReVanced Manager with updates and ReVanced Patches.

💪 Features

Some of the features ReVanced API include:

  • 📢 Announcements: Post and get announcements
  • ℹ️ About: Get more information such as a description, ways to donate to, and links of the hoster of ReVanced API
  • 🧩 Patches: Get the latest updates of ReVanced Patches, directly from ReVanced API
  • 👥 Contributors: List all contributors involved in the project

🚀 How to get started

ReVanced API can be deployed as a Docker container or used standalone.

🐳 Docker

To deploy ReVanced API as a Docker container, you can use Docker Compose or Docker CLI.
The Docker image is published on GitHub Container registry, so before you can pull the image, you need to authenticate to the Container registry.

🗄️ Docker Compose

  1. Create an .env file using .env.example as a template
  2. Create a configuration.toml file using configuration.example.toml as a template
  3. Create an about.json file using about.example.json as a template
  4. Create a docker-compose.yml file using docker-compose.example.yml as a template
  5. Run docker-compose up -d to start the server

💻 Docker CLI

  1. Create an .env file using .env.example as a template
  2. Create a configuration.toml file using configuration.example.toml as a template
  3. Create an about.json file using about.example.json as a template
  4. Start the container using the following command:
    docker run -d --name revanced-api \
     # Mount the .env file
     -v $(pwd)/.env:/app/.env \
     # Mount the configuration.toml file
     -v $(pwd)/configuration.toml:/app/configuration.toml \
     # Mount the patches public key
     -v $(pwd)/patches-public-key.asc:/app/patches-public-key.asc \
     # Mount the static folder
     -v $(pwd)/static:/app/static \
     # Mount the about.json file
     -v $(pwd)/about.json:/app/about.json \
     # Mount the persistence folder
     -v $(pwd)/persistence:/app/persistence \
     # Expose the port 8888
     -p 8888:8888 \
     # Use the start command to start the server
     -e COMMAND=start \
     # Pull the image from the GitHub Container registry
     ghcr.io/revanced/revanced-api:latest

🖥️ Standalone

To deploy ReVanced API standalone, you can either use the pre-built executable or build it from source.

📦 Pre-built executable

A Java Runtime Environment (JRE) must be installed.

  1. Download ReVanced API to a folder
  2. In the same folder, create an .env file using .env.example as a template
  3. In the same folder, create a configuration.toml file using configuration.example.toml as a template
  4. In the same folder, create an about.json file using about.example.json as a template
  5. Run java -jar revanced-api.jar start to start the server

🛠️ From source

A Java Development Kit (JDK) and Git must be installed.

  1. Run git clone git@github.com:ReVanced/revanced-api.git to clone the repository
  2. Copy .env.example to .env and fill in the required values
  3. Copy configuration.example.toml to configuration.toml and fill in the required values
  4. Copy about.example.json to about.json and fill in the required values
  5. Run gradlew run --args=start to start the server

📚 Everything else

📙 Contributing

Thank you for considering contributing to ReVanced API. You can find the contribution guidelines here.

🛠️ Building

To build ReVanced API, a Java Development Kit (JDK) and Git must be installed.
Follow the steps below to build ReVanced API:

  1. Run git clone git@github.com:ReVanced/revanced-api.git to clone the repository
  2. Run gradlew build to build the project

📜 Licence

ReVanced API is licensed under the AGPLv3 licence. Please see the licence file for more information. tl;dr you may copy, distribute and modify ReVanced API as long as you track changes/dates in source files. Any modifications to ReVanced API must also be made available under the GPL along with build & install instructions.