npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

capacitor-installer-source-name

v1.0.2

Published

A Capacitor plugin that detects the installation source of your app across Android, iOS, and Web platforms

Readme

capacitor-installer-source-name

A Capacitor plugin that detects the installation source of your app across different platforms.

Features

  • 🤖 Android: Detects Google Play Store, APK sideloading, third-party app stores, and more
  • 🍎 iOS: Identifies App Store, TestFlight, Enterprise, or Development installations
  • 🌐 Web: Determines PWA installation status or browser access
  • 📦 40+ Android App Stores: Comprehensive mapping of popular app stores and installation sources

Install

npm install capacitor-installer-source-name
npx cap sync

Usage

import { CapacitorInstallerSourceName } from 'capacitor-installer-source-name';

const getInstaller = async () => {
  try {
    const result = await CapacitorInstallerSourceName.getAppInstaller();
    console.log('App installed from:', result.installer);
  } catch (error) {
    console.error('Error getting installer info:', error);
  }
};

Platform-Specific Return Values

Android

  • "Google Play Store" - Installed from Google Play
  • "Amazon App Store" - Installed from Amazon Appstore
  • "Samsung Galaxy Store" - Installed from Samsung's store
  • "Huawei AppGallery" - Installed from Huawei's store
  • "F-Droid" - Installed from F-Droid open source store
  • "APKPure", "Uptodown", "Aptoide" - Third-party stores
  • "Unknown source" - Sideloaded APK or unknown installer
  • Package name (e.g., "com.example.installer") - Unrecognized installer

iOS

  • "App Store" - Standard App Store installation
  • "TestFlight" - Beta testing via TestFlight
  • "Development/Xcode" - Development build via Xcode
  • "Enterprise" - Enterprise distribution

Web

  • "PWA (Installed)" - Installed as Progressive Web App
  • "PWA (Browser)" - PWA-capable but running in browser
  • "Electron" - Running in Electron wrapper
  • "Web Browser" - Standard web browser access

API

getAppInstaller()

getAppInstaller() => Promise<{ installer: string | null; }>

Gets information about how the app was installed.

Returns: Promise<{ installer: string | null; }>

Since: 1.0.0


Use Cases

  • Analytics: Track installation sources for app distribution insights
  • Security: Identify potentially unsafe installation methods
  • Feature Gating: Enable/disable features based on installation source
  • Support: Provide different support channels based on install source
  • Marketing Attribution: Understand which distribution channels are most effective

License

MIT