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

@qtxr/request

v3.9.5

Published

Collection of libraries for efficient, clean, and intuitive web requests

Downloads

15

Readme

@qtxr/request

@qtxr/request is a collection of libraries facilitating HTTP requests. It adopts syntax from the fetch API, as well as more traditional jQuery callback chaining. It is highly extendable and customizable, and strives to provide solutions for both front-end and back-end applications.

In this document we will briefly outline the following libraries:

  • fetch request client
  • XHRHttpRequest request client
  • AssetLoader

Consistency

@qtxr/request provides request managers and instances thereof that are designed to follow the same API, and if possible implement missing or inconveniently implemented features from competing APIs. For instance, the fetch-based library has support for timeouts, download progress, and convenient aborting functionality. Similarly, the XHRHttpRequest-based implementation has support for most of what Request has to offer, besides also supporting Promise-based fetching.


Managers, States, and Responses

Managers lie at the core of all provided request libraries. Their responsibility is to accept and process configuration (presets), set up request modes, and dispatch requests into states.

States allow callbacks to hook into them, and receive changes to be relayed and incorporated into the result. When the request has finished, a response object is emitted (resolved or rejected via built-in Promise functionality).

Responses provide an interface with which the client can access useful data pertinent to the request response. These response objects are heavily influenced by the Response class bundled by the fetch API, and provides much of the same functionality, even if the underlying request module doesn't support it.


AssetLoader

AssetLoader is a standard library for loading assets of any type. The library is mainly meant to facilitate loading of modules, that is, assets that may request other modules. For more information, check out /doc/asset-loader.md.