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

@cumulus/post-to-cmr

v21.3.2

Published

Post a given granule to CMR

Readme

@cumulus/post-to-cmr

This lambda function posts granule metadata to CMR (Common Metadata Repository).

It will use the information contained in a metadata file on S3 and post that information to the CMR service. The S3 metadata file can be either ECHO10 xml metadata with extension .cmr.xml or UMM-G JSON with extension .cmr.json.

Metadata fields updated/managed by Cumulus

The move-granules task and the (api)granules.move function will both update the metadata files on S3. For UMM-G JSON metadata, RelatedUrls are updated, while ECHO10 XML metadata will maintain the metadata in OnlineAccessURLs.

A granule's files URL, and Type/Description for UMMG and URLDescription for ECHO10, are modified for each file in the granule based on its bucket location. The metadata URLs are based on the file bucket storage type. Files placed in protected buckets will get a url to the distribution endpoint. Files in public buckets will get direct https links. URLs not directly related to the granule's files are unmodified and preserved as they exist.

Message Configuration

For more information on configuring a Cumulus Message Adapter task, see the Cumulus workflow input/output documentation.

Config

Config object fields:

| field name | type | default | description | ---------- | ---- | ------- | ----------- | bucket | string | (required) | Name of S3 bucket containing public/private key pair to decrypt CMR credentials | process | string | (required) | Process the granules went through | stack | string | (required) | Name of deployment stack | cmr | object | (required) | CMR credentials object | concurrency | number | 20 | Maximum concurrency of requests to CMR | republish | boolean | false | Whether to remove published granules from CMR and republish them again

Input

Input object fields:

| field name | type | default | description | ---------- | ---- | ------- | ----------- | granules | array<object> | (required) | List of granule objects

Output

Output object fields:

| field name | type | default | values | description | ---------- | ---- | ------- | ------ | ----------- | granules | array<object> | N/A | List of granule objects published to CMR | process | string | N/A | Process the granules went through

About Cumulus

Cumulus is a cloud-based data ingest, archive, distribution and management prototype for NASA's future Earth science data streams.

Cumulus Documentation

Contributing

To make a contribution, please see our contributing guidelines.