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

@practicaloptimism/uniplexer

v0.0.1

Published

A multiplexer for 3rd party service providers and application protocols

Downloads

541

Readme

🦄 Uniplexer

npm version downloads coverage report pipeline status

💻 Interactive Demos (planned, please wait awhile) | 🎬 Video Development Journal

Uniplexer is a Multiplexer for 3rd party service providers and application protocols.

This project is a work-in-progress.

About

Multiplexers are instruments or tools that allow you to toggle or select from a list of multiple services and protocols including heavifying from one feature or another from service to service at the cost of providing a credential or set of credentials for those services you're using.

3rd Party Services such as database, computer, and distributed ledger technology services are numerous in availability in the community and yet having a multiplexer provide a single interface to all those services helps to reduce the complexity of accessing the services you need when you need them.

Application Protocols are diverse and require various needs depending on the application. A common protocol interface for any set of specific protocols is tremendously useful to make transitioning to new protocols easy and fast for development time experience measures.

Benefits

  • 🌈 Programmatically Select Program Architecture: The application can select the operations to perform by an application protocol or provider by calling the program indirectly through a multiplexer function that selects the operation based on the list of credential ids provided by the application program. Instead of hardcoding a specific service provider like a particular database engine you are free to change database providers by selecting another credential id from your list of initialized credential ids.

Features

  • 🌿 Multiple Provider Types: Multiplex between multiple provider types such as database, asymmetric cryptography, network protocols, computer services, distributed ledger technology, file system, hash function and text search (work-in-progress)

Limitations

  • 🍼 Experimental: Lots of love and care from grandma and newborn scientists means this project is a work-in-progress. Grandmas need more time to understand the next best boxing moves to make and babies just like to play around to see how things could work even better, not sure what it means to step.

Table of Contents

Additional Notes

Development Journal

Keep track of how this project is working as we roll out more features in our development journal.

Browser Compatibility

Uniplexer supports all browsers that are ES5-compliant (IE8 and below are not supported).

Installation Guide

Install the library using Node Package Manager (NPM)

If you're just getting started with Node.js and NPM, read this introduction or install both programs by visiting nodejs.org

npm install @practicaloptimism/uniplexer --save
Import the library using a JavaScript-based Programming Language

If you're just getting started programming in a language like JavaScript, you may learn how to setup an import statement in your local programming environment by visiting these resources: (1) JavaScript Import Export Tutorial with Examples, (2) import - javascript | mozilla

import * as uniplexer from '@practicaloptimism/uniplexer'
Or import the library using an HTML script tag
<script src="https://unpkg.com/@practicaloptimism/uniplexer@latest/compiled/index.js"></script>

Application Programmable Interface (API) Reference

Table of Contents:

Analytics API Reference
Asymmetric Cryptography API Reference
Chat Messaging API Reference
Computer Service API Reference
Database API Reference

This API Reference demonstrates a way to request and retrieve information from a database.

Distributed Ledger Technology API Reference
File System API Reference
Hash Function API Reference
Network Protocol API Reference
Provider Credential API Reference
Text Search API Reference

3rd Party Service Providers and Application Protocols

Table of Contents:

Asymmetric Cryptography Providers
Chat Messaging Providers
Computer Service Providers
Database Providers
Distributed Ledger Technology Providers
File System Providers
Hash Function Providers
Network Protocol Providers
Provider Credential Providers
Text Search Providers

Contribution

Everyone is free to welcome new members to contribute. Trust in yourself to know what to do and don't be afraid to ask for help when you need it. Read more about our contribution guide.

Documentation

Your pancake recipe matters. So please share how to improve ours by visiting our documentation page and sharing your latest findings on what makes pancakes tastey.

Acknowledgements

Thank you to everyone who contributes to the open ecosystem of software development. Your work is very important and a multiplexer cannot exist without the options ordered by the people and projects that enable you and I to select between those options.

Related Work

A list of some known (*)All-Purpose Multiplexers include: Uniplexer

A list of some known Asymmetric Cryptography Multiplexers include:

A list of some known Database Multiplexers include: Localforage

A list of some known Hash Function Multiplexers include:

A list of some known File System Multiplexers include: BrowserFS

A list of some known Network Protocol Multiplexers include: libp2p

A list of some known Distributed Ledger Technology Multiplexers include:

(*) The All-Purpose Multiplexer that Uniplexer seeks to be is "all-purpose" with respect to being general enough to be a useful software package for daily chores that people need being done in their application projects.

License

MIT