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

dynamodb-versioning

v1.1.4

Published

A package to manage DynamoDB migrations

Readme

DynamoDB Versioning

Description

This is a work in progress. It is a way to version your DynamoDB between different evironments. The idea is very much based on Flyway.

How To

Set Up the Necessary Variables

You can pass in the needed variables in three ways. Number 1 is the lowest priority.

  1. Using the defaults
  2. using a .dvrc file in the root of the project
  3. Environment Variables

There are 6 variables that need to be set.

Defualts

Data path, table path, and the name of the version table have defaults.

  • Table path is /db/table
  • Data path is /db/data
  • Version table is `sjs-versioning-migration'

.dvrc

A JSON file with the following structure:

{
  "tablePath": string,
  "datePath": string,
  "environments": {
    [anykey]: {
      "endpoint": string,
      "awsId": string,
      "region": string,
      "secret": string,
      "tagPath": string,
      "tagName": string
    }
  }
}

Environment Variables

You can set these environment variables if you like.

  • TABLE_PATH - string - the path to the json for the tables
  • DATA_PATH - string - the path to the json for the data
  • TAG_PATH - string - the path to the tag folder
  • TAG_NAME - string - the path to the tags
  • AWS_ID - string - the ID for the AWS account
  • AWS_SECRET - string - the secret of the AWS account
  • AWS_ENDPOINT - URL - the URL for the DynamoDB
  • AWS_REGION - string - the region for the DynamoDB

Tables

File name

The files must be a json file. They have 4 parts: version, command, description, and file type.

  • version
    • The version should match the following regex with V[1-9][0-9]* and a number. The first file should be V1 then V2 etc.
  • Command
    • Only two commands are working. It must be create or update. create will create a new table by calling createTable and must follow the json struture needed by AWS - Create Table. update will use the updateTable function and the json will be AWS - Update Table
  • Description
    • This can be anything but best to describe the file
  • File Type
    • Must be json

An example file would be V1_create_new-table.json.

Data

This will only add or update data in the table. It can be any file name but it must be a json file.