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

com.dengage.cordova.example

v1.0.0

Published

A sample Apache Cordova application that responds to the deviceready event.

Readme

Dengage Cordova Example App

This is a sample Cordova application demonstrating the usage of the Dengage Cordova SDK. The app follows the same structure and functionality as the React Native Dengage SDK example.

Features

The app includes the following screens and functionality:

  1. Home Screen - Main navigation menu
  2. Ask Notifications - Request push notification permissions
  3. Device Info - Display device information, integration key, device ID, contact key, token, SDK version, etc.
  4. Change Contact Key - Set and update contact key and user permission
  5. Inbox Messages - View, delete, and mark inbox messages as clicked
  6. In App Message - Configure in-app messages with device info and navigation
  7. Real Time In App Message - Configure and show real-time in-app messages with filters
  8. Real Time In App Filters - Access event history and cart management
  9. Geofence - Request location permissions for geofencing
  10. InApp Inline - Display inline in-app messages
  11. App Story - Display app stories
  12. Event History - Send custom events based on SDK parameters
  13. Cart - Manage shopping cart items

Setup Instructions

Prerequisites

  • Node.js and npm installed
  • Cordova CLI installed (npm install -g cordova)
  • Android Studio (for Android development)
  • Xcode (for iOS development)

Installation

  1. Navigate to the project directory:
cd dengage-cordova-example
  1. The plugin should already be installed. If not, install it:
cordova plugin add ../dengage-cordova-sdk

Configuration

Android Configuration

  1. Open platforms/android/app/src/main/java/com/dengage/cordova/example/MainApplication.java
  2. Replace YOUR_FIREBASE_INTEGRATION_KEY_HERE with your actual Firebase Integration Key
  3. (Optional) Replace the Huawei Integration Key if you're using Huawei services

iOS Configuration

  1. Open platforms/ios/DengageCordovaExample/AppDelegate.m
  2. Replace YOUR_IOS_INTEGRATION_KEY_HERE with your actual iOS Integration Key
  3. Update the appGroupsKey if you're using App Groups for notification extensions

Building and Running

Android

cordova build android
cordova run android

iOS

cd platforms/ios
pod install
cd ../..
cordova build ios
cordova run ios

Project Structure

dengage-cordova-example/
├── www/
│   ├── index.html          # Main HTML file with all screens
│   ├── css/
│   │   └── index.css       # Styles matching React Native appearance
│   └── js/
│       ├── index.js       # Main entry point
│       ├── navigation.js   # Navigation logic
│       ├── dengage-init.js # Dengage SDK initialization
│       └── screens/       # Screen-specific JavaScript files
│           ├── home.js
│           ├── device-info.js
│           ├── contact-key.js
│           ├── inbox-messages.js
│           ├── in-app-message.js
│           ├── rt-in-app-message.js
│           ├── geofence.js
│           ├── in-app-inline.js
│           ├── app-story.js
│           ├── event-history.js
│           └── cart.js
├── platforms/
│   ├── android/
│   │   └── app/src/main/java/com/dengage/cordova/example/
│   │       └── MainApplication.java  # Android initialization
│   └── ios/
│       └── DengageCordovaExample/
│           ├── AppDelegate.h        # iOS AppDelegate header
│           └── AppDelegate.m        # iOS initialization
└── config.xml

Initialization

The Dengage SDK is initialized in platform-specific files:

  • Android: MainApplication.java - Initializes Dengage in the onCreate() method
  • iOS: AppDelegate.m - Initializes Dengage in didFinishLaunchingWithOptions:

Both follow the same pattern as the React Native SDK example, with similar configuration options:

  • Integration keys
  • Logging enabled
  • Geofence enabled
  • Development status
  • Notification permissions

Notes

  • The app uses the same Dengage Cordova plugin as the main SDK
  • All screens and functionality mirror the React Native example app
  • In-app inline views and app stories require native view integration (placeholders are provided)
  • Make sure to add your integration keys before building the app

License

Apache License 2.0