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

@devoinc/app-developer-kit

v2.1.2

Published

Devo Web Browser Applications Development Kit

Downloads

43

Readme

Devo Applications Developer Kit

Devo Applications Developer Kit is the mandatory NPM package to start building javascript web browser applications on Devo, it allows you to communicate your application with the devo web and APIs.

Devo Apps

A Devo App is a front-end web browser extension capable of being injected and hosted into the Devo web platform as well as communicating with it and with the collection of HTTP services enabled for Devo customers.

Before starting

As a main requirement for the development of applications in Devo it is necessary to have access to the platform and a domain.

Once you have access, to prepare the development environment you must install the google chrome extension "Devo Runner", you will find it here. This extension will help the developer to be able to debug and develop their application by providing a mechanism to inject it into an existing Devo client domain.

Instalation

Start by installing this package in your NPM project

$ npm install @devoinc/app-developer-kit

For these applications to be compatible with Devo and Devo Runner, it will be necessary to configure the javascript bundler so that the result of its process generates a single HTML file with all the javascript code and css styles inline. For this we recommend to use Webpack 5 and the InlineChunkHtmlPlugin plugin.

A complete usage example for this package can be found in this react template.

Features

You can find the complete reference of the development kit API here.

  • User information: The IDevoApp instance could be used to obtain the information of the current user who is executing this application in the web browser.
import {
  IDevoApp,
  DevoAppProvider,
  UserInfo,
} from '@devoinc/app-developer-kit';

(async () => {
  const dApp: IDevoApp = DevoAppProvider.init();
  const userInfo: UserInfo = await dApp.getUserInfo();
  console.log(userInfo);
})();
  • Create notifications messages: The IDevoApp instance could be used to render a devo notification message in the browser.
import {
  IDevoApp,
  DevoAppProvider,
  NotipopRequest,
} from '@devoinc/app-developer-kit';

(async () => {
  const dApp: IDevoApp = DevoAppProvider.init();
  const notipop: NotipopRequest = {
    title: 'Hello world',
    text: '...',
    type: 'info',
  };
  await dApp.createNotiPop(notipop);
})();
  • Devo queries: The IDevoApp instance could be used to make queries on Devo query engine. You could found a complete documentation about Devo queries here.

  • Devo alerts: The IDevoApp instance could be used to operate with Devo alerts. You could found a complete documentation about Devo alerts here and the client reference here.

import {
  IDevoApp,
  DevoAppProvider,
  AlertsApiClient,
} from '@devoinc/app-developer-kit';

(async () => {
  const dApp: IDevoApp = DevoAppProvider.init();
  const alertsClient: AlertsApiClient.IClient = await dApp.getAlertsClient(
    'alertsApiUrl'
  );
  const alertDefinitions: AlertsApiClient.AlertDefinition =
    await alertsClient.getAlerts();
  console.log(alertDefinitions);
})();

AppPreferences client

The Devo App Developer Kit helps with using AppPreferences API provided by the webapp. The AppPreferences API allows to persist arbitrary json objects with different scopes. Complete docs for this feature are here.

Standalone mode

It is possible to initialize the IDevoApp instance to work in standalone mode, in this way, the different dependencies of the application with the Devo web core and API endpoints could be mocked. Just use the init method passing it a specific settings for the 'standaloneDependencies' field as the following example.

import {
    IDevoApp,
    DevoAppProvider,
    WebCoreRuntimeDeps,
    Dates,
} from '@devoinc/app-developer-kit';

(async () => {
    class StandaloneNotipop {
        constructor(request: NotiPopRequest) {
            console.log(`Fake notification`, request);
        }
    }

    const mockedUserInfo: UserInfo = {
        name: 'John Doe',
        email: '[email protected]',
        locale: 'en-US',
        ...
    };

    const mockedGoToQuery: (query: string, dates: Dates) => {
        console.log(`Fake goToQuery. ${query} ${dates}`);
    };

    const dApp: IDevoApp = DevoAppProvider.init({
        standaloneDependencies: {
            goToQuery: mockedGoToQuery,
            userInfo: mockedUserInfo,
            NotiPop: StandaloneNotipop,
        },
    });
})();

Publishing and hosting

The publishing and hosting process for these applications will be carried out by Devo employees. Please contact Devo support for this task.