npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details


  • User packages



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.


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 🙏

© 2022 – Pkg Stats / Ryan Hefner




Network Stack Creation (hosted zone, cert, etc)





This stack will allow you to create a HostedZone and Certificate so you can have a custom domain name for use in API Gateway, CloudFront or anywhere else.


| Stack | Description | --- | --- | NetworkStack | Allow for creation of a HostedZone and Certificate for a custom domain name.

NetworkStack Properties

| Property | Required | Type | Description | --- | --- | --- | applicationName | Yes | string | Name of the application and used as a prefix for all lambda names | environmentName | Yes | string | The logical environment (dev, qa, etc) | domainName | Yes | string | The full domain name ( for example) | env | No | cdk.Environment | The environment needed for this work. This is important to set the same as other stacks so you can use the public properties of the stack

Public "Output" Properties

| Property | Type | Description | --- | --- | certificate | ICertificate | Reference to the created Certificate | hostedZone | IHostedZone | Reference to the created Hosted Zone | domainName | string | The full domain name ( for example)


Managers are used to have a consolidated object that will control the CICD and Build process. This allows the same object to be passed to the CICD and APP setups. They allow for custom actions to be run during the IAC Setup, the Environment Setup, and when creating the stack. These managers will be passed to the CICD process.

Each stack above has a corresponding manager:

  • NetworkStackManager

Creating HostedZones and Certificates

There are a couple manual steps to do when creating a HostedZone and Certificate. These have to happen the first time as you run the pipeline, but won't have to happen again.

DNS Validation of Certificate

AWS Certificate Manager uses DNS Validation of the certificate. Here are instructions on how to do that:

HostedZone NS records

Depending on the domain you select, you may need to go to the HostedZone in the account that is managing the nameserver and add NS records there. For instance, is in awsmmd account. Follow these steps:

  • After the HostedZone is created in the account (while the pipeline is still running if possible), you can go to the NS record and copy the value. It should be 4 nameservers.
  • Go to the account that owns the hosted zone
  • Open the hosted zone, and add a new record
  • Add a NS record with the record name being your domain for instance, and for the value, take the NS values you copied in step 1.


import { NetworkStack } from '@makemydeal/cdk-network-stack';

const networkStack = networkManager.CreateStack(app, {
    domainName, // the full domain you wish to create
    environmentName, // environment name like dev, qa, etc
    env // AWS account/region