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

freepi

v3.0.3

Published

Wrapper for various free apis

Downloads

8

Readme

FreePI, The Free API Library

Description

This is a library designed to give rapid and easy access to a variety of free APIs found on the internet. It's purpose is to give developers a simple way to get placeholder text, json, or test their application's network connectivity without needing to create their own services or write boilerplate code to access the APIs. It also removes the need to remember the various endpoints associated with the APIs by abstracting http requests to simple class methods.

This Library also serves as a way to document and collect various free apis which can speed development without frequently needing to return to the source documentation.

This Library is created as a MonoRepo with each individual wrapper and project existing as a separate package. It uses Lerna to bootstrap and symlink the packages as well as for managing version control. This means that every tool included in this library can be downloaded separately. It takes inspiration from the Jest, Babel, and React in it's organization.

Installation:

To install FreePI run

$ npm install freepi

# Or to install an individual package:

$ npm install @freepi/JSONPlaceholder

How to Use:

Simply install the library and import the API wrapper you wish to use from the freepi library. Alternatively, each wrapper can be downloaded individually using the @freepi/ notation.

import { JSONPlaceholder } from "freepi";

# OR

import JSONPlaceholder from "@freepi/jsonplaceholder";

Then create a local instance of the wrapper following the ReadMe for the individual package (Some packages may vary in their configuration)

const jsonWrap = new JSONPlaceholder();

const todos = await jsonWrap.todos.find({ userId: 1 });

APIs Supported:

JSONPlaceholder

Documentation here

Unsplash

Documentation here

Dino Ipsum

Documentation here

core

Documentation here

APIs To Be Supported:

  • Lorem Ipsum Generator

Other Features:

The library is written in TypeScript and bundled to include all the necessary types information. This means IntelliSense in VSCODE or another IDE will work with FreePI and if you are using TypeScript, all the Types will be included from the start!

Features a standalone core library with several handy services to aid in rapid development of APIs for either FreePI or your own API wrapper projects. Including a a custom request library based on Axios.

Platforms Supported:

node.js
browser

Linting and Formatting Rules

Uses Eslint and Prettier. Contributors should use Prettier to format their code before submitting. Linting and formatting rules can be found in the respective .eslintrc.json and .prettierrc files.

Bug Reports and Feedback

Any bug reports or feedback for this library should be directed to the github issues page