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

awwwards-stream

v1.0.0

Published

scrape Awwwards data

Downloads

11

Readme

awwwards-stream

experimental

Creates a readable stream of Awwwards.com data by scraping their HTML.

:warning: This is fragile and should only be used for offline experimentation / artistic purposes. It is not an official API and you should rate limit your requests to keep stress off the Awwwards servers. It may break at any point and should not be used in a live Node.js server.

Install

npm i awwwards-stream --save

Example

var awwwards = require('awwwards-stream');

awwwards({
  type: 'sotd', // Site of the Day
  pages: 2,
  startPage: 0
})
  .on('data', site => {
    console.log('%s: %s', site.title, site.url)
  })
  .on('end', () => {
    console.log('Finished')
  });

Results (from Feb 9, 2016) –

Centurion-Magazine: http://centurion-magazine.com
Active Theory v3: http://activetheory.net
A Short Journey: http://www.ashortjourney.com
Tolia - The Longest Short Films: http://tolia.ge/
Make Me Pulse 2016 Wishes: http://2016.makemepulse.com
Jérémie Battaglia: http://jeremiebattaglia.com/
Do You Still Believe?: http://www.doyoustillbelieve.com/
Red Collar: http://redcollar.digital
Publicis90: http://www.publicis90.com
A State of War: http://astateofwar.org.au
Doudou Blues: http://www.doudoublues.com/
The Grey Tales: http://thegreytales.net
Finished

Usage

NPM

stream = awwwardsStream(opts)

Returns a readable object stream that emits objects for each entry in the Awwwards data. Options:

  • type (String) can be one of: sotd, sotm, nominees, mentions, trending – defaults to 'sotd'
  • startPage (Number) starting page, default 0
  • pages (Number) total number of pages to scrape, default Infinity
  • rate (Number) delay between successive requests, default 250 ms

The objects have this form:

{
  title: String,            // Title of site
  url: String,              // URL of site
  thumbnail: String,        // URL of thumbnail
  entry: String,            // Site URL on Awwwards.com
  hearts: Number,           // # of hearts
  author: {                 // Agency/User/Author
    name: String,           // e.g. "Jam3"
    entry: String,          // Author URL on Awwwards.com
    country: String         // e.g. "Canada"
  },
  rating: Number|undefined, // Rating/10 or undefined
  date: String,             // a Date string for this entry
  developerAward: Boolean   // If the site has this badge
};

License

MIT, see LICENSE.md for details.