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

@helpnest/slack

v0.1.1

Published

Slack bot for searching HelpNest help center articles

Readme

@helpnest/slack

Search your HelpNest help center directly from Slack.

Commands

| Command | Description | |---|---| | /helpnest [query] | Search your help center articles by keyword. Results appear only to you (ephemeral). Click Share to post an article to the channel. | | /helpnest-ask [question] | Ask a natural-language question. HelpNest returns the most relevant articles as your answer. |


Setup

1. Create a Slack App

  1. Go to api.slack.com/apps and click Create New App.
  2. Choose From an app manifest.
  3. Select your workspace and click Next.
  4. Paste the contents of manifest.yml into the YAML editor and click NextCreate.

2. Install to your workspace

  1. In your app settings, go to OAuth & PermissionsInstall to Workspace.
  2. After installation, copy the Bot User OAuth Token (starts with xoxb-).
  3. Go to Basic InformationApp Credentials and copy the Signing Secret.

3. Set environment variables

Copy .env.example to .env and fill in all values:

cp .env.example .env

| Variable | Description | |---|---| | SLACK_BOT_TOKEN | Bot User OAuth Token from OAuth & Permissions | | SLACK_SIGNING_SECRET | Signing Secret from Basic Information | | HELPNEST_URL | Base URL of your HelpNest instance (e.g. https://help.yourcompany.com) | | HELPNEST_API_KEY | API key generated in your HelpNest workspace settings | | HELPNEST_WORKSPACE | Your HelpNest workspace slug (e.g. acme) | | PORT | Port to listen on (default: 3000) |

4. Deploy

Build and start the server:

npm install
npm run build
npm start

5. Add the Request URL in Slack

  1. In your Slack app settings, go to Slash Commands.
  2. Edit /helpnest and /helpnest-ask.
  3. Set the Request URL to https://your-domain.com/slack/events for both commands.
  4. Save changes.

Deploy to Railway

Deploy on Railway

Set the following environment variables in your Railway project:

  • SLACK_BOT_TOKEN
  • SLACK_SIGNING_SECRET
  • HELPNEST_URL
  • HELPNEST_API_KEY
  • HELPNEST_WORKSPACE

Railway will automatically detect the npm run build && npm start workflow. After deploy, use your Railway public URL as the Slack Request URL (https://<project>.up.railway.app/slack/events).


Local development

Use ngrok to expose your local server to the internet for testing:

# Terminal 1 — start the bot in dev mode (auto-restarts on save)
npm run dev

# Terminal 2 — expose port 3000
ngrok http 3000

Copy the ngrok HTTPS URL (e.g. https://abc123.ngrok.io) and set it as the Slack Request URL: https://abc123.ngrok.io/slack/events.

The ngrok URL changes each restart unless you have a paid ngrok account. Update the Slack app settings each time.


Permissions (OAuth scopes)

| Scope | Reason | |---|---| | commands | Register and receive slash commands | | chat:write | Post messages in channels the bot is a member of | | chat:write.public | Post messages in public channels without joining |


Self-hosted HelpNest

If you are running HelpNest on your own infrastructure, set HELPNEST_URL to your instance's base URL (e.g. https://help.internal.yourcompany.com). The bot communicates with HelpNest via its REST API and requires a valid API key.

See the HelpNest documentation for instructions on generating API keys from your workspace settings.