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

serverless-s3-notifications

v2.0.5

Published

[![serverless](http://public.serverless.com/badges/v3.svg)](http://www.serverless.com) [![npm](https://img.shields.io/npm/v/serverless-s3-notifications.svg)](https://www.npmjs.com/package/serverless-s3-notifications) [![npm](https://img.shields.io/npm/dt/

Readme

serverless-s3-notifications

serverless npm npm MIT licensed

Event notifications on already existing buckets

The reason for developing this plugin is that the serverless framework currently not supports creating event notifications on existing buckets in another AWS account, because it wants to create the bucket and fails when it already exists. In our particular use-case we need to add event notifications on already existing buckets in another AWS account.

Process description
- The scripts assumes that the S3 buckets, permissions ("s3:Put*", "s3:Get*","s3:Delete*") and roles are already in place!

- Firstly, we add lambda.addPermission for the Lambda on the custom parameter notification_bucket. Some basic checks are in place to check if a permissions already exists.

- Secondly, we loop through the custom parameter notification_folders and do a s3.putBucketNotificationConfiguration for each folder. You can run the serverless deploy command multiple times to add/remove folders.

Installing and configuring the plugin

Run the following command;

$ npm install serverless-s3-notifications

Add these custom parameter to your serverless.yml

custom:
  # serverless-s3-notifications plugin parameters
  notification_bucket: your_event_s3_bucket_name                  # S3 bucket name where are placing the event notifications
  notification_type: "s3:ObjectCreated:*"                         # type of action you want to trigger the event notification
  notification_folders: ['myfolder1/', 'myfolder2/']              # specify any number of folders`s that you want the event to trigger
  aws_account_id: "1234567890"                                    # aws account id where the notification_bucket resides
  lambda_name: "${self:service}-${self:stage, 'dev'}-helloworld"  # service-stage-functionname

functions:
  helloworld:
    handler: helloworld.lambda_handler
    timeout: 10
    memorySize: 128

plugins:
  - serverless-s3-notifications

Deploying your Lambda and event notifications

Deploy

$ export http_proxy="http://yourproxy" # provide a proxy address
$ export assume_role="assume_role_arn" # haven't found a way of fetching this from serverless.yml (yet)
$ serverless deploy --profile your_aws_profile

Remove

$ serverless remove