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 🙏

© 2024 – Pkg Stats / Ryan Hefner

babbage-protomap

v0.2.44

Published

Make informed decisions about who can access your personal information

Downloads

42

Readme

ProtoMap

npm version

ProtoMap is a library designed to resolve protocol permissions within the MetaNet ecosystem. At its core, ProtoMap empowers users with precise insights into the specific data that applications request when seeking protocol permissions. Beyond abstract protocol IDs, ProtoMap reveals concrete details such as names, icons, descriptions, and protocol documentation links.

This transparency equips MetaNet users to make informed decisions about granting access to their personal information. Navigate data permissions with confidence, thanks to simple integration of ProtoMap.

Installation

Simply use npm to include ProtoMap in your project:

npm install babbage-protomap

Usage

You can easily register and resolve protocols by following the example code below.

Note: You must have your MetaNet Client running in order for this to work!

import { ProtoMap } from 'babbage-protomap'

const init = async () => {
    const protoMap = new ProtoMap()
    
    // Register a new protocol
    await protoMap.registerNewProtocol(
        1, 
        'social apps', 
        'Social Apps Protocol', 
        'uhrp://abcdefg', 
        'The social media application protocol', 
        'https://projectbabbage.com'
    )

    // Resolve protocol information using registryOperator, securityLevel, and protocolID
    const protocolInfo = await protoMap.resolveProtocol(
        '032e5bd6b837cfb30208bbb1d571db9ddf2fb1a7b59fb4ed2a31af632699f770a1', 
        1,
        'social apps'
    )
    console.log(protocolInfo)
    /**
     * Example Response
     {
            securityLevel: '1',
            protocolID: 'social apps',
            name: 'Social Apps Protocol',
            iconURL: 'uhrp://abcdefg',
            description: 'The social media application protocol',
            documentationURL: 'https://projectbabbage.com',
            registryOperator: '032e5bd6b837cfb30208bbb1d571db9ddf2fb1a7b59fb4ed2a31af632699f770a1'
       }
    **/
}
init()

API

Table of Contents

ProtoMap

Make informed decisions about who can access your personal information

Parameters

  • ``
  • config ConfederacyConfig

registerNewProtocol

Registers a new protocol

Parameters

Returns Promise<void>

resolveProtocol

Resolves a protocol from it's metadata

Parameters
  • registryOperator string the operator of the protocol registration to resolve
  • securityLevel (0 | 1 | 2) determines the set permission level of this protocol
  • protocolID string identifier with this protocol registration
  • confederacyURL the Confederacy host of the overlay where the UTXO is tracked

Returns Promise<ProtoMapRecord>

listOwnRegistryEntries

Gets all the protocol registry entries from a user's basket

Returns Promise<ProtoMapRecord>

revokeOwnRegistryEntry

Revokes a owned protocol registration

Parameters
  • entry ProtoMapRecord protocol registration entry to revoke

Returns Promise<void>

License

The license for the code in this repository is the Open BSV License