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 🙏

© 2026 – Pkg Stats / Ryan Hefner

eleventy-plugin-feedbin

v0.0.2

Published

A little 11ty plugin to help you make use of the Feedbin API.

Readme

The Absolutely Unofficial 11ty Plugin for Using the Excellent Feedbin API

Inspired by Uncle Dave Rupert (thanks!)

This is a plug-and-play example of how to use the Feedbin API to build a static list of your favorite RSS articles on your 11ty-powered website. A few features:

  • This is a static list, so even if the Feedbin API goes down or is removed, your page will still work.
  • This implementation is very gentle on the Feedbin API. It only requests articles once: once the article is saved in your repo, there's no need to ask for it again, so we don't.
  • Not only does this store links to your favorite articles, but it also stores the article itself. This way if you end up with broken links someday, you can fall back on your own cached content (with attribution, of course!)
  • You own your own content. Once these favorites are stored in your codebase, you'll have them forever, even if Feedbin goes belly up. Hopefully that won't happen, but if it does, you'll be prepared.

You can see an example of this code at work on my own likes page.


Requirements

For this plugin to work you need an 11ty-powered site and a Feedbin account.

1. Installation

Available on npm. Install by running this command in your terminal:

npm install --save eleventy-plugin-feedbin

Open your Eleventy config file (probably .eleventy.js) and use addPlugin to enable:

const pluginFeedbin = require("eleventy-plugin-feedbin");
module.exports = function(eleventyConfig) {
  eleventyConfig.addPlugin(pluginFeedbin);
}

In addition, you'll need to call the favorites shortcode from a view in order to generate the data. That looks like this:

{% favorites %}

Just include this before you use the data, and it will kick off the processes required to create and maintain the data.

2. Copy/create .env file

Create a file in you project named .env, and add your Feedbin credentials. It should look like this:

FEEDLY_AUTH="[email protected]:FeedbinPassword"

3. Build your site!

The data will only be retrieved on building for production, so you can run NODE_ENV=production npx eleventy to build your data store. If NODE_ENV doesn't equal production, 11ty will use whatever data you have cached.

Your favorites are stored in your global data. You can look at the data there, and you can access the data using feedbin.favorites. For an example view, see sample/index.njk.

4. Profit...?

That's pretty much it! Here is an example of the data created:

  "children": [
    {
      "id": 2065741235,
      "feed_id": 1256917,
      "title": "3D Glasses with Perspective Origin",
      "author": null,
      "summary": "This is the fifth article in a series discussing different optical illusions & mechanical toys and how we can recreate them on the web (and learn from them). Unlike the other articles in this series, the full effects require a physical item — specifically",
      "content": "article content...",
      "url": "https://danielcwilson.com/blog/2019/04/optical-fun-3d-glasses/",
      "extracted_content_url": "https://extract.feedbin.com/parser/feedbin/a645d4f7e223a34360cdbd9441ad69560625f0a5?base64_url=aHR0cHM6Ly9kYW5pZWxjd2lsc29uLmNvbS9ibG9nLzIwMTkvMDQvb3B0aWNhbC1mdW4tM2QtZ2xhc3Nlcy8=",
      "published": "2019-04-15T12:30:30.000000Z",
      "created_at": "2019-04-15T12:47:36.934714Z"
    }
  ]

Once you have your data store created, then you can use any of this data inside any template in your project. You can see an example implementation in the sample/index.njk file.

Troubleshooting:

If you get an error that says _data/feedbin.json cannot be parsed, it might have to do with nunjucks data processing. If you run into this issue, try returning dataTemplateEngine: false in your 11ty config.


More to come!

I'm amazed at how easy this was to set up with 11ty. I'm definitely going to experiment with more features of the Feedbin API, and undoubtedly some of that experimentation will trickle into this plugin. Stay in touch!

One feature that definitely will come at some point: I want to automatically check to make sure there are no broken links. If there are any broken links, I want to fallback on the content stored in our cache.