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

helpdeskjs

v1.0.4

Published

Small helpdesk software

Readme

HelpDeskJS

Simple helpdesk Node.js website for user subscription management and ticket creation with groove integration at the backend.

Features

  • Local Authentication using Email and Password
  • OAuth 2.0 Authentication via Google
  • Contact Form
    • Sending email to admin
  • Groove integration
    • Create a new ticket
    • View ticket messages
    • Add ticket message
  • Stripe credit card payment integration
  • Subscription payment management
  • Allow/disallow creation of tickets if invoice is not paid
  • User account and subscription management
    • Welcome email to user
    • Admin notification on every new user
    • Gravatar
    • Profile details
    • Change password
    • Forgot password
    • Reset password
    • Link multiple OAuth logins to one account
    • CSRF protection
  • MVC Project Structure
  • Express
  • EJS forms (with master layout)
  • Sass stylesheets (auto-compiled via middleware)
  • Bootstrap 3

Prerequisites

Installation

# Get latest version from github
git clone --depth=1 https://github.com/silveridea/helpdeskjs.git myhelpdesk
cd myhelpdesk

# Install dependencies
npm install

Usage

You will need to edit .env.example file and set your keys.

MONTHLY_PRICE is the price per month for your service in USD.

See obtaining API keys section below.

start your mongodb

npm start

You can now browse to http://localhost:3000

Obtaining API keys

Groove

  • Sign up with https://www.groovehq.com/
  • Go to Settings->API
  • Copy the Private Token and paste it to .env file to GROOVEHQ_ACCESS_TOKEN=
  • Put the email you are using with groove in .env file to GROOVE_AGENT_EMAIL=

Stripe

  • Sign up with http://stripe.com
  • Click on your profile and click on Account Settings
  • Click on API Keys
  • Copy the keys into .env file to STRIPE_SKEY, STRIPE_PKEY

Google

  • Visit Google Cloud Console https://console.cloud.google.com/
  • Click on the Create Project button - Enter your project name, click on Create button
  • Then click on API Manager in the sidebar -> Enable API
  • Uder Social APIs click on Google+ API, then click Enable API
  • On API Manager in the sidebar click Credentials
  • Click on Create new Client ID button
  • Select Web Application and click on Configure Consent Screen
  • Fill out the required fields then click on Save
  • In the Create Client ID modal dialog:
    • Application Type: Web Application
    • Authorized Javascript origins: http://localhost:3000
    • Authorized redirect URI: http://localhost:3000/auth/google/callback
    • Click on Create Client ID button
    • Copy and paste Client ID and Client secret keys into .env file GOOGLE_ID,GOOGLE_SECRET Note: When you ready to deploy to production don't forget to add your new url to Authorized Javascript origins and Authorized redirect URI, e.g. http://myapp.herokuapp.com and http://myapp.herokuapp.com/auth/google/callback respectively.

Future work

  • Add guide how to publish to Heroku
  • Enable payment with PayPal
  • Create a job to generate new invoice every month, send a notification to the user, disable the account if not paid
  • Create a real shopping cart

Your feedback is important

by silveridea