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 🙏

© 2024 – Pkg Stats / Ryan Hefner

guest-feedback-module

v0.2.0

Published

This sends gets allows the guest to directly send us feedback

Downloads

33

Readme

🚀 Welcome to the Guest Feedback Module

Description

This project is a one stop shop for gathering guest feedback via email. By making the usage as simple as possible as well as making it platform agnostic it makes it possible to add to virtually any project.

Intallation

Intalling the library in a project is as simple as:

npm install guest-feedback-module

Usage

Import the class from the library Instantiate it with your api key Then bind the 'gatherFeedback' to any event you would like.

Here is an example binding the method to a button click handler:

import GuestFeedback from "guest-feedback-module";
const gfm = new GuestFeedback("yourApiKeyGoesHere");
const appConfig = {
  appSpecificText:
    "body of the email you want sent goes here, useful if you want to talk about dateleg, app, how this was collected etc...",
  Subject: "subject line of the email",
};

The project ships with typescript definitions, weather you use them or not you should be able to get hints on the valid users

<button onClick="gfm.gatherFeedback(['rafa', 'another valid user'], appConfig)">
  clickMe
</button>

** Note: ** The emails is an array and supports you adding as many emails to the distribution list as you would like.

Internal API

send-request-to-api

inputs ( key: string ), ( email: {To, From, HtmlBody, Subject} ) it appends the api key to the query parameters as 'key' performs the axios request returns (statusCodes: 200, 400, 500)

generate-email-from-input

Generate the template Return the email object

handle-email-request REMOTE

get key from query parameter of name key sha256 it and compare it to the known sample -- diff entrypoint if 1 send prod email then send 200 if 0 send 400 if -1 send 200 and send test email

validate-key REMOTE

input -- key: string apply sha256 to the key compare it to the known keys dictionary return ValidationResult_

get-secret REMOTE

import google secrets manager pull the secret path from the config start a new secrets manager instance use the instance to return the secret value

Screenshots

User Interface

Usr-interface

Email Notification

Email-notificaiton

Made With

coco-oil

unpack-emails REMOTE

get the users array from the To field of the email map the users array to an actual email return a new email with actual emails in the to field