Skip to content

A zero-dependency JavaScript library that converts standard HTTP URLs (YouTube, LinkedIn) into Native Mobile Deep Links (Custom Schemes & Android Intents).

License

Notifications You must be signed in to change notification settings

mdsaban/universal-app-opener

Repository files navigation

Universal App Opener

A JavaScript library that converts standard HTTP URLs (YouTube, LinkedIn) into Native Mobile Deep Links (Custom Schemes & Android Intents).

⚠️ Development Status

This package is currently in active development and may not work as expected. Use at your own risk. Breaking changes may occur in future versions.

Installation

📦 View on npm

npm install universal-app-opener
pnpm add universal-app-opener
yarn add universal-app-opener

Quick Start

import { openLink } from 'universal-app-opener';

openLink('https://www.youtube.com/watch?v=dQw4w9WgXcQ');

That's it! The library automatically detects your platform and opens the appropriate app or web URL.

Demo

Try it out: Live Demo

Supported Platforms

YouTube

  • Videos

LinkedIn

  • Profiles
  • Posts
  • Company Pages
  • Jobs

Instagram

  • Profiles
  • Posts
  • Reels
  • IGTV Videos

Facebook

  • General Facebook URLs (profiles, posts, pages, etc.)

Reddit

  • Subreddits
  • User Profiles

Spotify

  • Tracks
  • Artists
  • Albums
  • Playlists
  • Shows
  • Episodes
  • Audiobooks

Threads

  • User Profiles

WhatsApp

  • Chat Links (phone number)
  • Chat Links with Pre-filled Text

Documentation & API Reference

For full usage instructions, API details, and advanced examples, see the Core Package README.

Goal

The goal of this project is to provide a lightweight, zero-dependency library that can detect platform-specific deep links from common web URLs. This enables web applications to seamlessly redirect users to native mobile apps when available, improving user experience across platforms.

Local Setup

Prerequisites

  • Node.js >= 22.0.0
  • PNPM >= 9.0.0

Installation

  1. Clone the repository:
git clone <repository-url>
cd universal-app-opener
  1. Install dependencies:
pnpm install
  1. Start development:
pnpm dev

This will start:

  • The core library in watch mode
  • The demo app at http://localhost:5173

Build

To build all packages:

pnpm build

Contributing

If you're interested in contributing in the beta phase, you can join our private Discord community: Discord Invite

For contribution guidelines, development workflow, and instructions to add new platforms, see CONTRIBUTING.md.

About

A zero-dependency JavaScript library that converts standard HTTP URLs (YouTube, LinkedIn) into Native Mobile Deep Links (Custom Schemes & Android Intents).

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 21