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

@geo1088/taco

v1.1.1

Published

A RESTful API that collects and returns data on sneakers. This API will also find, compare and return a link of where to buy the sneaker based on the price.

Downloads

10

Readme

A StockX API, FlightClub API, Goat API, and Stadium Goods API all in one.

Sneaks API is a sneaker API built using Node.JS, Express, and Got. The Sneaks API allows users to get essential sneaker content such as images, product links and even prices from resell sites while also collecting data and storing it within a database. This API mainly scrapes StockX for sneaker information and then asynchronously scrapes Stadium Goods, Goat, and Flight Club for additional sneaker information such as images and its respective resell price. This API outputs a sneaker object of the following variables:

  • Sneaker Name

  • Colorway

  • Description

  • Release Date

  • Retail Price

  • Style ID

  • Image Links

  • Product links from each of the resell sites

  • Price map (of shoe size to price) from each of the resell sites

  • And more

I built this API so sneaker heads and developers are able to create sneaker based programs, trackers and websites without having to fumble with scrapping information on all 4 resell websites. Feel free to fork, edit and submit a pull request for this API for any changes or improvements. If you have any questions or issues regarding this feel free to create an issue and I will try to answer them as soon as I can.

UPDATE: As per many requests, I updated this API to version 1.1 which removes the caching database from the API so no need to download and have MongoDB running for the API. If youd like to use the database version of the API, it is now a depreciated branch to this repository.

Demo

Sneaks App - Website | Github

Technologies Used

  • Node.JS

  • Express

  • Got

  • Request

  • Mongoose

Installation

To use this API you will need to have node.js installed and running. Once installed, use this line on the terminal within your project directory

npm install sneaks-api

and place this line at the top of your main file

const SneaksAPI = require('sneaks-api');

How to Use

Method #1: Using the SneaksAPI class

const SneaksAPI = require('sneaks-api');
const sneaks = new SneaksAPI();

//getProducts(keyword, callback) takes in a keyword and returns an array of products
sneaks.getProducts("Yeezy Cinder", function(err, products){
    console.log(products)
})

//Product object includes styleID where you input it in the getProductPrices function
//getProductPrices(styleID, callback) takes in a style ID and returns sneaker info including a price map and more images of the product
sneaks.getProductPrices("FY2903", function(err, product){
    console.log(product)
})
//getMostPopular(callback) returns an array of the current popular products curated by StockX
sneaks.getMostPopular(function(err, products){
    console.log(products)
})

Console log of sneaks.getProducts("Yeezy Cinder", ...)
Console log of sneaks.getProductPrices("FY2903", ...)

Method #2: Using localhost:3000

Once your program starts with the sneaks-api module imported, a server should start and listen on port 3000

Routes:

This route takes in a keyword and returns an array of products (getProducts(keyword))

GET localhost:3000/search/:keyword

This route takes in a style ID and returns sneaker info including a price map and more images of the product (getProductprices(styleID))

GET localhost:3000/id/:styleID/prices

This route returns an array of the current popular products curated by StockX (getMostPopular())

GET localhost:3000/home