Skip to content

tanishqmanuja/apkmirror-downloader

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

35 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Logo

APKMD //APKMirror Downloader

Downloads NPM Version GitHub Workflow Status Language License

APKMD is a CLI tool that allows you to download APKs from Apkmirror. This repo also provides a npm package apkmirror-downloader that allows you to do the same programatically.

πŸš€ Install

Using npm

npm install apkmirror-downloader

Using bun

bun add apkmirror-downloader

Or use any other package manager like yarn or pnpm

πŸ“ƒ Usage

import { APKMirrorDownloader } from "apkmirror-downloader";

const apkmd = new APKMirrorDownloader(
  { outDir: "./downloads" }, // <-- 🟠 APKMDOptions (optional)
);

apkmd.download(
  { org: "google-inc", repo: "youtube" }, // <-- App (required)
  { type: "apk" }, // <-- 🟣 AppOptions (optional), will be merged with APKMDOptions
);

// OR

APKMirrorDownloader.download({ org: "google-inc", repo: "youtube" });

🟠 APKMDOptions Interface

  • arch: Optional. The architecture of the application. For example, arm64-v8a, armeabi-v7a, etc.
  • dpi: Optional. The screen density of the application. For example, 240dpi, 320dpi, 480dpi, etc.
  • minAndroidVersion: Optional. The minimum Android version that the application is compatible with.
  • outDir: Optional. The output directory where the application files will be stored.
  • overwrite: Optional. Whether to overwrite the output file if it already exists.

🟣 AppOptions Interface

  • version: Optional. The version of the application.
  • arch: Optional, DEFAULT: "universal". The architecture of the application. For example, arm64-v8a, armeabi-v7a, etc.
  • dpi: Optional, DEFAULT: "nodpi". The screen density of the application. For example, 240dpi, 320dpi, 480dpi, etc.
  • type: Optional, DEFAULT: "apk". The type of the application. Supported types are "apk" and "bundle".
  • minAndroidVersion: Optional. The minimum Android version that the application is compatible with.
  • outFile: Optional. The name of the output file where the application will be saved.
  • outDir: Optional. The output directory where the application files will be stored.
  • overwrite: Optional. Whether to overwrite the output file if it already exists.

AppOptions will be merged automatically with APKMDOptions when download function is called.

Warning

Sometimes, download can fail at random. This is most likely due to rate limit protection by APKMirror using Cloudflare.

⚑ CLI

CLI can be downloaded from releases section.

Usage can be found using the following command

apkmd --help

For downloading multiple apks use apps.json file

apkmd apps.json
{
  "options": {
    "arch": "arm64-v8a",
    "outDir": "downloads"
  },
  "apps": [
    {
      "org": "google-inc",
      "repo": "youtube-music",
      "outFile": "ytm"
    },
    {
      "org": "google-inc",
      "repo": "youtube",
      "outFile": "yt",
      "version": "18.40.34"
    }
  ]
}

🐱 Show your support

Give a ⭐️ if this project helped you!

πŸ‘¨β€πŸ’» Projects to checkout

  1. πŸ“¦ gh-apkmirror-dl by Yakov
    A GitHub Action to download APKs from Apkmirror

  2. πŸ“¦ revanced-auto-patcher by Sp3EdeR
    A Python script to patch apps using Revanced or Revanced Extended

πŸ’€ Disclaimer

THIS PROJECT IS NOT ASSOCIATED OR ENDORSED BY APKMIRROR. The project is provided "as is" without warranty of any kind, either express or implied. Use at your own risk.